使用php的socket实现异步请求。一般的使用以下代码都可以实现
$fp = stream_socket_client($host.':'.$part, $errno, $errstr, 30);
if ($fp) {
$out = "GET /".$request." HTTP/1.1\r\n";
$out .= "Host: ".$host."\r\n";;
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
fclose($fp);
}
好几台服务器都是相同的环境,但是有台服务器,必须要在fwrite后面加上以下代码,相应的请求才可以执行。
while (!feof($fp)) {
echo fgets($fp, 1024);
}
在本地测试(apache)是没有问题的,我也怀疑过nginx的问题,但是有其他服务器使用同样的配置确实没有问题,有没有遇到过这样的问题的同学,求指教!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。