那里有什么好的教室吗?
目前我使用的是apache2 / mod_php,效率不高。
应该不是真正关系你正在运行哪个发行版,但是这里是我用于CentOS服务器的设置,但是应该能够很容易地翻译,无论你正在使用哪一个。 您需要使用Apache2的Worker MPM与Prefork MPM,以获得最佳效果。
假设您已经通过分发包装或从源代码安装了mod_fastcgi。 一旦你安装了mod_fastcgi,那么你要确保它被configuration为通过Apache2加载,我在/etc/httpd/conf.d/mod_fastcgi.conf包含了:
LoadModule fastcgi_module modules/mod_fastcgi.so
接下来,我创build了另一个文件,如/etc/httpd/conf.d/ whatever .conf (命名任何你想要的东西,对我来说,它是wordpress.conf ):
<Directory "/path/to/app/docroot"> Options +ExecCGI AddHandler php5-fastcgi .php Action php5-fastcgi /cgi-bin/php.fcgi DirectoryIndex index.php index.html AllowOverride All </Directory>
这就意味着在你的cgi-bin目录下(对我来说就是/var/www/cgi-bin/我需要创buildphp.fcgi脚本和chmod 755它。
#!/bin/bash ### Set PATH ### PHP_CGI=/usr/bin/php-cgi PHP_FCGI_CHILDREN=0 PHP_FCGI_MAX_REQUESTS=1000 ### no editing below ### export PHP_FCGI_CHILDREN export PHP_FCGI_MAX_REQUESTS exec $PHP_CGI
当然如果你的系统不同,更新PHP_CGIpath。 您也可以更改PHP_FCGI_CHILDREN值,我已经看到一些build议将它设置为4,但我已经把它留在0,并有良好的性能。
在这一点上,你应该能够重新启动Apache2重新读取configuration,如果你设置一个简单的phpinfo()页面来查询你应该看到它说的ServerAPI设置陈述CGI/FastCGI 。
什么发行?
下面是一个在Ubuntu上从mod_php转到mod_fcgid的教程: