网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

玩玩WordPress-环境简介(0)

GG网络技术分享 2025-03-18 16:07 6


简介

提到开源博客系统,一般都会直接想到WordPress!

WordPress是使用PHP开发的,数据库使用的是MySQL,一般会在Linux上运行,Nginx作为前端。

这时候就需要有一套LNMP(Linux + Nginx+MySQL + PHP)的环境支持。

Linux

操作系统使用Linux,可以比较稳定的运行。

Linux有很多发行版本,在服务器上,有些人喜欢Debian/Ubuntu,有些人喜欢CentOS/RHEL,还有其他很多发行版本可以选择。

在国内,使用比较多的Linux发行版本是CentOS,资料也比较多。

目前CentOS7是主流的版本,CentOS6快要不更新了。

Nginx

nginx是一个高性能的HTTP和反向代理web服务器,是目前最流行的Web服务应用,相比apache httpd拥有更好的性能,因此现在基本不考虑使用apache httpd最为web服务了。

nginx目前官方的比较新、比较稳定版本是1.16。

MySQL

目前MySQL8已经出来了,但是还不是很稳定,有些应用驱动也没有跟上,因此可以考虑使用MySQL5.7或者MySQL5.6,这两个版本是现在应用比较多了,出了问题,找资料也比较方便。

PHP

目前最新版本的WordPress要求PHP的版本是7.4或更高版本。

PHP7性能有了很大的提升。如果是之前使用旧版本的,可以根据兼容性情况,升级到7的版本。

Nginx转发给PHP处理,一般是使用FastCGI模式。PHP就需要启动对应的php-fpm服务来监听处理请求。

如果nginx和php-fpm在同一台机器上,就可以通过socket文件直接进行通讯;如果在不同的机器上就需要通过网络端口进行通讯。

工作流程

了解整个的工作流程可以让我们更好地维护这个系统。博客系统,没有那么多的复杂的业务,可以让我们快速上手这一整套的环境。

流程用户通过浏览器访问我们的博客,例如:博客系统首先接受到请求的就是我们的Nginx;Nginx通过访问的URL判断,下一步操作;如果是静态资源,直接访问目录取到文件,直接返回给浏览器;如果是需要处理的动态资源,比如访问一个PHP页面,需要PHP组件来完成解析后,就将请求转发到后端的PHP服务进行解析;PHP接受到nginx转发过来的请求,就处理对应的PHP文件;如果遇到需要操作数据库数据,这时候PHP就需要连接到MySQL进行操作,PHP返回给Nginx,再返回给浏览器进行展示。

简化流程:

用户(浏览器) => Nginx(on Linux)=> PHP(php-fpm) => MySQL

因此我们对用户开放的端口就只有Nginx监听的端口即可。其他端口不需要对外公开,只要对应的组件能连接到对应的服务端口即可。

例如:如果服务组件不在同一台服务器上,MySQL服务器上的MySQL数据库服务端口,只要PHP服务可以连接到即可,不需要对Nginx或者用户开放端口;同样PHP(php-fpm)只要对nginx开放即可,不用对MySQL或者用户开放。

总结

在做安全加固的时候,理解好这个工作流程非常重要,防止误拦截或者漏防护(毕竟MySQL端口、php-fpm端口对公网开放,风险很高)。

标签:

提交需求或反馈

Demand feedback