CentOS 系统 PHP 外部数据库无法访问

老牛浏览 410评论 0发表于

mysql_connectmysqli_connect 均显示连接失败,但是用 Navicat 可以连接上数据库,所以判断应该是环境配置问题,找了很多办法都没解决。

最后在知乎上面找到答案了:

我猜题主用的应该是 Apache 吧,如果是的,那原因可能是这个:
CentOS 默认情况下,SELinux 是打开的,在 SELinux 打开的情况下,是不允许连接远程 MySQL 资源的,简单的做法是关闭 SELinux:

bash
setenforce 0

这种做法在线上肯定是不推荐的,可以用:

bash
setsebool httpd_can_network_connect_db 1

设置 Apache 允许访问外部 MySQL 资源。

瞬间感动落泪,原来大家都有掉到坑里过。

点赞
收藏
暂无评论,快来发表评论吧~
私信
老牛@ilaoniu
老牛,俗称哞哞。单纯的九零后理工小青年。喜欢折腾,爱玩,爱音乐,爱游戏,爱电影,爱旅游...
最后活跃于