有三台web服务器做负载均衡,其中一台服务器连接redis异常,报错信息如下:
Predis Fatal Error : No sentinel server available for autodiscovery.
再往前看发现有php有warning信息:
PHP Warning[2]: stream_socket_client() has been disabled for security reasons
因为程序是用的是PHP的predis库,连接是TCP连接,要用PHP内置的stream_socket_client函数,如果php.ini配置文件中在disable_functions里面禁用了stream_socket_client数据的话就会导致程序连不上redis.修改配置文件后报错消失。
本文转自 emma_cql 51CTO博客,原文链接:http://blog.51cto.com/chenql/1977546