Apache 与 php-fpm
![]() |
PHP-FPM 是 PHP 的 Fast Process Manager(快速进程管理器),作为一个服务运行,当通过 FastCGI 接口请求文件时,它会根据需要生成 PHP 进程。将请求传递给 PHP-FPM 可以更快地解释 PHP 文件,而不是每次请求页面时都让 Apache 生成新进程。您可以在此处阅读更多相关信息。
说明
安装
安装所需软件包
# apk add apache2-proxy php-fpm
运行服务并添加到启动项
# rc-service php-fpm83 start # rc-update add php-fpm83 # rc-service apache2 start # rc-update add apache2
配置
配置 Apache
取消注释 mpm_event 模块并注释 mpm_prefork 模块,如下所示
LoadModule mpm_event_module modules/mod_mpm_event.so #LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
将以下行添加到 /etc/apache2/httpd.conf
<FilesMatch \.php$> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch>
注释掉 /etc/apache2/conf.d/php8-module.conf 中的以下行
#LoadModule php_module modules/mod_php8.so #DirectoryIndex index.php index.html #<FilesMatch \.php$> # SetHandler application/x-httpd-php #</FilesMatch>
配置 PHP-FPM
编辑文件 /etc/php8/php-fpm.conf 以满足您的需求。
在配置中,您可能需要将默认用户和组从 nobody 更改为另一个用户,例如 apache
user = apache group = apache
编辑配置后,重启 apache2 和 PHP-FPM
# rc-service php-fpm8 reload && rc-service apache2 reload