我们有一个网站运行速度非常慢。我怀疑是 php-fpm 配置的问题,但如果这不是问题所在,我宁愿先进行性能测试,也不愿再尝试。
因此我克隆了我们的一个负载均衡器生产虚拟机并想删除 php-fpm,但不确定如何删除。
CentOS 7.6,httpd 2.4.38,php7.2
停止 php-fpm 显然不会有任何作用,只会破坏它。移动文件 /etc/httpd/conf.d/php-fpm.conf 只会停止所有 PHP 文件的解释,那么我该如何将其恢复为 mod_php?
编辑:1)已安装mod_php72u.x86_64
2)添加了一个包含以下内容的php.conf
文件:/etc/httpd/conf.d/
#
# The following lines prevent .user.ini files from being viewed by Web clients.
#
<Files ".user.ini">
Require all denied
</Files>
#
# Allow php to handle Multiviews
#
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
# mod_php options
#
<IfModule mod_php7.c>
#
# Cause the PHP interpreter to handle files with a .php extension.
#
<FilesMatch \.(php|phar)$>
SetHandler application/x-httpd-php
</FilesMatch>
#
# Uncomment the following lines to allow PHP to pretty-print .phps
# files as PHP source code:
#
#<FilesMatch \.phps$>
# SetHandler application/x-httpd-php-source
#</FilesMatch>
#
# Apache specific PHP configuration options
# those can be override in each configured vhost
#
php_value session.save_handler "files"
php_value session.save_path "/var/lib/php/mod_php/session"
php_value soap.wsdl_cache_dir "/var/lib/php/mod_php/wsdlcache"
#php_value opcache.file_cache "/var/lib/php/mod_php/opcache"
</IfModule>
答案1
要返回,很简单:
1)卸载php-fpm或者停止它:
sudo yum remove php72u-fpm.x86_64 php72u-fpm-httpd.noarch
或者
sudo systemctl stop php-fpm
2)再次安装mod_php
sudo yum install mod_php72u.x86_64
3)配置httpd要使用哪个监听器。配置文件显示必须使用prefork,/etc/httpd/conf.modules.d/15-php.conf
其中包含以下内容:
# Cannot load both php5 and php7 modules
<IfModule !mod_php5.c>
<IfModule prefork.c>
LoadModule php7_module modules/libphp7.so
</IfModule>
</IfModule>
在/etc/httpd/conf.modules.d/00-mpm.conf
注释掉
#LoadModule mpm_event_module modules/mod_mpm_event.so
并打开LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
4)重新启动Apache / httpd
sudo systemctl restart httpd
剧透警告:从简短的测试来看,它不是 php-fpm,所以现在我必须弄清楚到底是什么导致了速度缓慢。
答案2
在 Debian 10 上似乎更容易:只需启用和禁用现有模块。切换回“prefork”后,我的 apache php 网页服务速度提高了约 10 倍。我不确定它是什么(尽管我目前的猜测是它可能与单个 CPU 配置有关);尝试了许多“优化”(+ 不同的 mpm 模块)。尝试了 2 次,现有的“fpm”配置确实减慢了我的系统速度。
PHP 7.3.31-1~deb10u1,php-fpm7.3,Apache/2.4.38