按照文档上的 demo https://github.com/phpredis/phpredis#connect-open
function f($redis, $chan, $msg) { switch($chan) { case 'chan-1': ... break; case 'chan-2': ... break; case 'chan-2': ... break; } } $redis->subscribe(['chan-1', 'chan-2', 'chan-3'], 'f'); // subscribe to 3 chans``` 但是发布以后 就一直没有返回值了。等了一会后就会抛出 read error on connection 异常 查了资料 subscribe 是阻塞模式 不会有返回值 于是我设置了 // ini_set('default_socket_timeout', -1);
// $redis->setOption($redis::OPT_READ_TIMEOUT, -1);
执行后返回 502 了 脑瓜疼 cgi 和 nginx 又断开连接了。。 