首页 > 代码库 > SELinux导致PHP连接MySQL异常Can't connect to MySQL server的解决方法

SELinux导致PHP连接MySQL异常Can't connect to MySQL server的解决方法

今天上班遇到的问题,新配的Linux服务器,php、Apache和一系列扩展插件装好后,在本地好好的程序移上去就一直抱数据库连接错误,而用sql命令却能连接上去,

做了一个简单的判断数据库连接页面还是不行,证明不是程序问题,而是php的哪里问题了,就在网上查了大半天 有些方法都不合情况后面偶然发现SELinux这个东西

查了下这个有限制httpd对外访问的权限;具体如下

输入命令:getsebool -a|grep -i httpd

里面会有一个 httpd_can_network_connect --> off 的这个东东

off等于开启httpd对外访问的权限,要设为on就可以了

方法1:直接输入命令:setsebool -P httpd_can_network_connect=1,再命令:setenforce 0

方法2:vim /etc/sysconfig/selinux

里面有行 #SELINUX=enforcing 改为:SELINUX=disabled,再命令:setenforce 0

 

SELinux导致PHP连接MySQL异常Can't connect to MySQL server的解决方法