PHP无法连接到我的chrooted MySQL套接字?

时间:2011-10-14 15:40:17

标签: php mysql centos chroot

所以我在CentOS上设置了一个MySQL chroot。 MySQL实际上局限于/ opt / chroot / mysql /,我修改了/etc/init.d/mysqld文件,以便一切正常。我可以(以root身份)通过发出命令连接到套接字:

mysql -S /opt/chroot/mysql/var/lib/mysql/mysql.sock

目前,为了简单起见,MySQL root用户没有密码。

但是,由于某些原因,PHP(在Apache中运行)无法连接到同一个套接字。我已经尝试更新php.ini中的MySQL默认套接字变量,以及在建立连接时引用完整的套接字路径,但我总是得到同样的错误:

  

无法通过套接字连接到本地MySQL服务器'/opt/chroot/mysql/var/lib/mysql/mysql.sock'(13)

有什么想法吗?

更新:我自己找到了解决方案。 SELinux已启用,并且正在阻止Apache的所有连接。

1 个答案:

答案 0 :(得分:1)

Apache是​​否有权遍历/读取该路径中的所有目录?仅仅因为你从命令行以root身份做某事,并不意味着蹲到了Apache。这完全是一个不同的用户ID和不同的环境。