我找到的所有教程都是如何全新安装工人MPM + PHP-FPM,因为我的wordpress博客已经启动并运行了prefork MPM,如果我在模拟安装过程中出错了,请纠正我:
我在ubuntu上,根据一些教程,以下几行可以完成所有技巧:
apt-get install apache2-mpm-worker libapache2-mod-fastcgi php5-fpm php5-gd
a2enmod actions fastcgi alias
然后在/etc/apache2/conf.d/php5-fpm.conf
中设置配置:
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization
</IfModule>
毕竟,重启:
service apache2 restart && service php5-fpm restart
问题:
1)对于以前使用prefork MPM运行的网站,是否会导致整个过程中出现任何停机时间?
2)你是否需要更改任何已经存在的配置文件,如php或mysql或apache2(它们会在切换后立即生效而不做任何事情)?
3)我已经启动并运行了apc,您是否必须在切换后重新安装/重新配置它?
4)如何确定apache2是否按预期在工作MPM模式下工作?
非常感谢!
答案 0 :(得分:5)
是的,它必须至少替换正在运行的httpd进程。你肯定想先在开发设置上测试这个。在配置文件中容易出错,需要一段时间才能搞清楚。
没有改变php,mysql。是的更改apache httpd.conf以放入工作程序配置 - 它们与prefork设置非常不同。你需要在httpd.conf中自己做这些改变。
不,因为这是一个php模块,每当php运行它都有效。也就是说,它会在php-fpm中为每个池运行一个副本,所以如果你有多个域,你可以将它们分组到一个池中进行共享......但是如果你这样做,请注意安全问题。
httpd -V显示“server mpm”