重启apache时,libphp5.so: cannot restore segment prot after reloc: Permission denied 错误的解决办法

[转]本文转自:http://hi.baidu.com/knightlhs/blog/item/cac701d1e32d52319b50274a.html

①----------

apache2关于libphp5.so的permission denied的解决方法

和php-5.2.5,一切顺利。
最后一步重新启动apache报如下错误:
httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf:Cannot load /usr/local/apache/modules/libphp5.so into server:/usr/local/apache/modules/libphp5.so: cannot restore segment prot afterreloc: Permission denied
原因:是Linux有一个SELinux保护模式引起的。

解决办法:

1关闭SELINUX的方法:
vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled 需要重启
这个方法可能会对服务器带来风险。
2不关闭SELINUX的方法:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1

②------------

手工编译安装php后,如果一切顺利解决了的话,重启apache时,libphp5.so: cannot restore segmentprot after reloc: Permission denied 错误:如果你是开着seliunx 的话,运行下面的命令: chcon-t texrel_shlib_t /usr/local/apache/modules/libphp5.so <具体chcon的命令的意思,可以自己man一下,它是selinux有关的命令,更改文件的标签。ls命令在命令后加个 -Z 或者加 –context查看标签> 如果 没有开selinux 的话,找到libphp5.so,然后chmod 777 libphp5.so 源自:http://www.phpfreaks.com/forums/index.php?topic=133131.0;wap2

Cannot load /www/modules/libphp5.so into server error

(1/1)

bigb89 : Hi, I am trying to install PHP and configure it to workwith Apache. So far I have Apache 2 and MySQL 5 working just fine, butafter intalling PHP I tried to restart Apache and I get the followingerror: Cannot load /www/modules/libphp5.so into server:/www/modules/libphp5.so: cannot restore segment prot after reloc:Permission denied. What's causing this error is the following line onmy httpd.conf file: LoadModule php5_module        modules/libphp5.so.Could anyone explain to me what's causing this error and how can I fixit? Thanks in advance!

rlee923 : Hi, I assume you are using one of those linux with Selinuxenabled. The problem is caused by the security system - selinux,blocking it's access to libph5.so. chcon -t texrel_shlib_t/usr/local/apache/modules/libphp5.so This is the magic line of thecode, change the path so it points to the directory where you'veinstalled apache2 if necessary.

本文来自CSDN博客,转载自:http://blog.csdn.net/zenwong/archive/2009/07/28/4386058.aspx



你可能感兴趣的:(apache,PHP,linux,server,Security,System)