我编译php7的时候没有加上 -with-apxs2 这个参数,编译完后发现服务器不能解析php,请问如何在不重新编译php7的情况下,让apache支持php7?是为apache添加php的模块吗?谢谢
回复内容: 我编译php7的时候没有加上 -with-apxs2 这个参数,编译完后发现服务器不能解析php,请问如何在不重新编译php7的情况下,让apache支持php7?是为apache添加php的模块吗?谢谢
使用fastcgi运行php开启模块
loadmodule proxy_module modules/mod_proxy.soloadmodule proxy_fcgi_module modules/mod_proxy_fcgi.so
配置虚拟主机支持使用fcgi
documentroot /www/www.a.com servername /www/www.a.com serveralias www.a.com proxyrequests off proxypassmatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/www/www.a.com/$1 options none allowoverride none require all granted
让httpd支持解析php页面
vim httpd.conf
1 添加如下二行
addtype application/x-httpd-php .php addtype application/x-httpd-php-source .phps
2 定位至directoryindex index.html
修改为:
directoryindex index.php index.html
题外话感觉httpd就是麻烦,还是nginx好用。题主可以考虑使用nginx。
如果你想使用apache的mod_php(libphp7.so)运行php,那只能指定--with-apxs2=/path/to/httpd/2.4/bin/apxs重新编译.
不想重新编译,那你只能用apache提供的其他方式运行php,比如:
1.使用apache的mod_fcgid配合php-cgi运行(类似iis + php-cgi).
2.使用apache的mod_proxy_fcgi配合php-fpm运行(类似nginx + php-fpm).