如何在nginx和Apache2上同时运行单个PHP5-FPM

时间:2013-12-27 06:56:20

标签: php apache nginx

我需要一个测试服务器,它可以使用Nginx运行一些站点,一些站点使用Apache2(例如.htaccess文件)。

是否可以同时使用单个PHP5-FPM池(使用相同的PHP.ini)同时运行Nginx和Apache2?

1 个答案:

答案 0 :(得分:2)

没有得到答案,但我能够确认这项工作正常,Apache和Nginx可以同时使用同一个池。

设置Apache2以使用php5-fpm(由Mohammad AbuShady建议)和these instructions,然后安装nginx并添加相关的'fastcgi_pass'参数。

示例apache2 config:

<IfModule mod_fastcgi.c>
  FastCgiIpcDir /var/lib/apache2/fastcgi
  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>

示例nginx配置:

    location ~ \.php$ {
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_read_timeout 120;
    }

示例php5-fpm config:

listen = 127.0.0.1:9000

此外,不要忘记您需要将Apache2和Nginx绑定到不同的端口或不同的IP地址