【问题标题】:Troubleshooting "Permission denied" when attempting to connect to Redis from PHP script尝试从 PHP 脚本连接到 Redis 时对“权限被拒绝”进行故障排除
【发布时间】:2012-02-04 15:43:53
【问题描述】:

服务器上6379端口是开放的,我可以在SSH中成功运行telnet localhost 6379

我在 PHP 中尝试了 Predis/phpredis 客户端库,但仍然无法正常工作:

  • 当打开 6379 的套接字时,Predis 出现“权限被拒绝”错误。
  • phpredis 给出“redis 服务器消失”。

【问题讨论】:

    标签: php redis selinux


    【解决方案1】:

    问题已解决,输入:

    /usr/sbin/setsebool httpd_can_network_connect=1
    

    默认情况下,SELinux 不允许 Apache 建立套接字连接。更多信息可以在here找到。

    【讨论】:

    • 这个设置是永久的吗?还是应该将其添加到引导初始化脚本中?还是等文件?
    • 非常感谢这个问题的答案。节省时间!它可能会解决我在尝试运行也尝试打开端口的 c++ 可执行文件时遇到的另一个错误。
    • 我尝试使用 python redis 客户端并遇到了这个问题,它节省了几个小时!!
    • 要在重新启动后保留配置,请使用 -P 标志:setsebool -P httpd_can_network_connect 1
    • 为我节省了很多时间。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2013-07-08
    • 2019-02-07
    • 1970-01-01
    • 2014-06-18
    • 2015-06-08
    • 1970-01-01
    • 1970-01-01
    • 2014-10-22
    相关资源
    最近更新 更多