CentOS+Apache+php无法访问redis的解决方法 Redis server went away
2014-05-05 09:55
591 查看
在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
编辑访问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
相关文章推荐
- SELinux导致无法访问外网,PHP连接MySQL异常Can't connect to MySQL server、redis程序访问提示Redis server went away的解决方法
- CentOS+Apache+php无法访问redis的解决方法
- CentOS 安装 Apache 后其他机器无法访问的解决方法
- CentOS 5.2 安装httpd(Apache)服务器后无法访问解决方法
- Apache 2.2 安装好后新建任意 PHP 文件访问时返回 500 Internal Server Error 解决方法
- CentOS 6.5 安装Apache服务器后无法访问解决方法
- CentOS 安装 Apache 后其他机器无法访问的解决方法
- CentOS安装Apache服务器后无法访问解决方法
- CentOS 安装 Apache 后其他机器无法访问的解决方法
- CentOS 6.5 安装Apache服务器后无法访问解决方法
- CentOS 6.5安装Apache服务器后无法访问解决方法
- centos 搭建 apache,除本机外的机器无法访问的解决方法
- CentOS 5.2 安装Apache服务器后无法访问解决方法
- CentOS Apache 500 / 403错误及IP无法访问解决方法
- CentOS 6.5 安装Apache服务器后无法访问解决方法
- php后台经常提示无法连接mysql 刷新后又可以访问的解决方法
- 无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问。)” (Microsoft SQL Server,错误: 5120)的解决方法
- Apache2.2整合PHP5.3以上的版本时提示错误Cannot load php5apache2_2.dll into server解决方法
- 关于iis+php架构网站迁移到腾讯云ECS后公网IP无法访问的可能解决方法
- 无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问。)” (Microsoft SQL Server,错误: 5120)的解决方法