我需要在Ubuntu 14.04计算机上并行运行带有mod_php的PHP 5.6和带有php-fpm / mod-fastcgi的PHP 7.2。 在装有Ubuntu 16.04,Apache 2.4和PHP 7.1 / mod_php和PHP 7.2 / php-fpm的另一台计算机上,一切正常。 我的步骤:
apt install libapache2-mod-fastcgi php7.2-fpm php7.2 php7.2-common
a2enmod actions fastcgi alias proxy_fcgi
我用不同的池名称,用户名和组,套接字文件/var/run/php/php7.2-fpm-mysite.sock设置了一个fpm conf文件。 服务php7.2-fpm启动并创建了套接字文件。 虚拟主机的Docroot所有者设置为fmp conf文件中指定的用户名和组。 我将以下行添加到虚拟主机:
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php7.2-fpm-mysite.sock|fcgi://localhost/"
</FilesMatch>
在Ubuntu 16.04计算机上,一切正常。一个虚拟主机正在使用php-fpm 7.2,其他所有站点仍在使用php_mod 7.1。
然后,我在Ubuntu 14.04计算机上重复了所有这些步骤。我没有任何错误,但是在浏览网页时,PHP代码以纯色打印。 该代理显然不能正常工作,但我不知道为什么。套接字文件已创建,php-fpm日志中没有错误。 装有mod_php 5.6的Ubuntu 14.04计算机上的所有其他页面均按预期工作。 在此先感谢您的帮助。如果需要,我可以提供更多配置。
最好的问候 马赛厄斯
答案 0 :(得分:0)
我明白了。因为Apache 2.4.7不支持套接字文件,所以我不得不使用ProxyPassMatch