• CentOS+Apache+php无法访问redis的解决方法 Redis server went away


    在CentOS下配置Apache+php+redis+phpredis环境。
    编辑访问redis缓存的php程序test.php,以应用程序方式在后台运行,可成功访问Redis,而在Apache下以网页形式访问时则出错,在访问Redis以及之后的代码均不再执行。查看Apache的日志:/var/log/httpd/error_log,发现代码运行时出现异常:
    PHP Fatal error: Uncaught exception ‘RedisException’ with message ‘Redis server went away’ in /var/www/html/test.php

    在网上查该异常时均认为是php的Sokcet超时时间设置的过短,应该在代码前加上:ini_set(‘default_socket_timeout’, -1);
    经测试仍无法解决该问题,因在代码后台运行正常,因此判断并非代码本身问题,而是Apache不允许访问网络资源,尝试如下解决方法:
    打开/etc/selinux/config,找到其中的:
    SELINUX=enforcing
    改为:SELINUX=disabled

    问题解决!

    如果仍不能解决问题,可执行如下指令:
    /usr/sbin/setsebool httpd_can_network_connect=1

  • 相关阅读:
    关于服务器并发量的简单计算
    重温Android和Fragment生命周期
    JVM类加载机制
    设计六大原则总结
    Android Navigation使用
    Android BrocastReceiver解析
    Android LiveData使用
    Android Service解析
    Activity的生命周期和启动模式
    Java四种引用
  • 原文地址:https://www.cnblogs.com/jthb/p/3708532.html
Copyright © 2020-2023  润新知