红联Linux门户
Linux帮助

apache +mysql +php服务器配置问题解决方法

发布时间:2009-07-26 23:22:53来源:红联作者:sundh1981
今天配置Apache+MySql+Php Web服务器: /usr/local/apache2/bin/apachectl -k start 安装配置完成后启动报如下错误:
httpd: Syntax error on line 53 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
如果注掉第53行#LoadModule php5_module modules/libphp5.so 错误提示就没了,但是php无法运行了,因为这段代码正是加载php服务模块的。怎么回事那?这段代码是系统自动生成的怎么会有语法错误?郁闷!于是开始查。。。。
根据别人提示发现原来是:SeLinux在作怪,我说那?怎么每次一报错他就崩出来。。。。郁闷阿!看看SeLinux是个什么东东?
关键字: linux
Security-Enhanced Linux 是一个在2.6核心中整合的一个新的安全构架 Linux security modules(LSM),是美国国家安全局(NAS)和SElinux社区的一个联合项目,经过NAS 和红帽子公司的努力 ,seliunx被整合进入了红帽子linux企业版 Selinux简介 SElinux 在linux内核级别上提供了一个灵活的强制访问控制系统(MAC),这个强制访问控制系统是建立在自由访问控制系统(DAC)之上的。
看了以上的东西相比你也知道哦是咋回事了!其实这个东西就相当一个防火墙。。。那就把他关掉吧!

问题说明:Apache不能加载外挂php模块,并且Apache加载外挂php模块后不能自动启动。
解决办法:这是由SELinux的安全策略配置不当引起的,在RedHat 的官方网站上有相关的Apache/SELinux的策略调整文档,如果觉得麻烦,可以直接修1、改 /etc /selinux/config 将SELinux禁用
#SELINUX=enforcing
SELINUX=disabled
即把原来的enforcing改为disabled
2、chcon -t texrel_shlib_t /usr/local/apache2/modules/libphp5.so
ok
/usr/local/apache2/bin/apachectl restart
文章评论

共有 2 条评论

  1. wumingchenchao 于 2009-07-29 00:43:00发表:

    mark

  2. aibss 于 2009-07-27 00:00:23发表:

    服务器还没学到