我在Apache(2.2.17)服务器上运行PHP(5.3.3)作为Apache模块。
PHP 5.3.5已经编译好了,我可以运行make install来安装新的PHP库,还是应该在停止之前停止服务器? 我想避免后者(停止服务器),因为有很多静态内容(而不是PHP)的请求。
在评论之前,我很确定升级不会破坏任何PHP脚本。
不,不安全的PHP(模块)安装在现有的运行安装。 这可能会使您的networking服务器处于不稳定状态。 在覆盖现有的PHP安装之前,应该停止Web服务器。
如果您的网站同时提供静态内容和PHP内容,请考虑从httpd.conf删除下一行以禁用PHP:
LoadModule php5_module modules/libphp5.so
如果未加载php5_module,则拒绝访问扩展名为“.php”的文件(每次安装时都应该出现该文件以防止源代码泄露):
<IfModule !php5_module> <FilesMatch "\.(php|phtml)$"> Order allow,deny Deny from all </FilesMatch> </IfModule>
然后重新加载你的Apacheconfiguration:
# /usr/local/apache2/bin/apachectl graceful
从源代码目录安装PHP:
# make install
这个命令应该在httpd.conf文件中添加一个LoadModule php5_module modules/libphp5.so ,检查它是否被添加或者不被伤害。
最后重新加载configuration以再次启用PHP支持:
# /usr/local/apache2/bin/apachectl graceful
make install然后重新启动服务器应该没问题,以前我自己做过。
就像保险柜一样,一定要做一个以前的PHP库tar,以防万一升级不好! ;)