较平衡的WordPress服务器配置:Apache2.4 + MPM_EVENT + PHP7.x-FPM

最近修改

主流Wordpress服务器配置方案,大概是几种:

APACHE2 + MPM_WORKER + PHP5+ (libapache2-mod-php5)

这套方案非常成熟,也能应对中小型Wordpress站点流量,比MPM_WORKER比MPM_PREFORK资源利用率高,但仍不是最优。

APACHE2 + MPM_PREFORK + PHP7.x

新手站长听说PHP7.x的性能优势,果断升级,但APACHE2在这个PHP版本下只能工作在PREFORK模式,资源利用率其实很低。

NGINX + PHP7.x-FPM

看上去这是完美的配置,充分利用了NGINX引擎的非阻塞处理能力以及PHP7.x的高性能。但是只要稍有经验的Wordpress站长就会知道,这会让.htaccess失效,对常用且重要的插件如:Wordfence 安全插件,以及缓存性能插件并不友好,不得不手动去做些NGINX配置。

NGINX + APACHE2 + PHP7.x-FPM

只把NGINX当作反向代理来用,兼顾性能与配置兼容性,但稍显麻烦。

 

其实还有一种较平衡的组合,既能保证对.htaccess的友好,主流插件无缝激活,最小化手动配置,也能兼顾性能与服务器资源利用率。

APACHE2.4 + MPM_EVENT + PHP7.x-FPM

Web服务器是APACHE2.4,但跑在MPM_EVENT模式下,具备非阻塞处理网络请求的能力,对.htaccess友好,并能充分利用PHP7.x-FPM的高性能。

MPM_EVENT的能力也许无法和NGINX相比,但对绝大多数站点,并没有高并发的实际需求,想办法节省服务器资源更重要,所以这种方案更平衡。

这种方案的安装也不麻烦,Ubuntu,CentOS等主流Linux发型版本下都可实现,只要能正确对应包,手动配置量很小。

比如在Ubuntu 16.04下的方法:

sudo apt-get install -y software-properties-common

# 加入 Apache PPA
sudo add-apt-repository -y ppa:ondrej/apache2

# 加入 PHP PPA
sudo add-apt-repository -y ppa:ondrej/php

# 更新
sudo apt-get update# 安裝 Apache HTTP Server
sudo apt-get install -y apache2

# 安裝 PHP、PHP-FPM opcache
sudo apt-get install -y php7.2 php7.1-fpm php7.2-opcache

# 安裝所需的 PHP Extensions (依照自身需求添加)
sudo apt-get install -y php7.2-cli php7.2-dev php7.2-phpdbg php7.2-bz2 php7.2-common php7.2-curl php7.2-gd php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-readline php7.2-snmp php7.2-tidy php7.2-xml php7.2-xmlrpc php7.2-zip

# 将Apache MPM 由 Prefork 切换为 Event,因为安装PHP7.x会自动切换apache模式到prefork
sudo a2dismod mpm_prefork
sudo a2enmod  mpm_event

# 啟用 PHP-FPM proxy_fcgi 
sudo a2enmod  proxy_fcgi setenvif
sudo a2enconf php7.2-fpm

# 重启 Apache Service
sudo service apache2 restart

较平衡的wordpress服务器配置:apache2.4-mpm_event-php7.x-FPM
如果你的服务器资源宽裕(内存,CPU),也许并没有必要换这个配置,但如果服务器资源有限,CPU + 内存长期运行于临界(80%+),或者Wordpress站点需要尽量对.htaccess友好,这个配置值得一试。

如果你选哟长期管理多站点或多服务,应该考虑自动化服务器配置工具

看到错别字?选中错误文字按Ctrl+Enter键 ^.^

  订阅  
提醒

报告错别字

下列文字将被发送给管理员