nginx - LNMPA环境下PHP异步请求的问题
程序员文章站
2024-04-04 09:07:29
...
使用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的问题,但是有其他服务器使用同样的配置确实没有问题,有没有遇到过这样的问题的同学,求指教!
回复内容:
使用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的问题,但是有其他服务器使用同样的配置确实没有问题,有没有遇到过这样的问题的同学,求指教!
好像是缓冲区的问题, php的output_buffering。
推荐阅读
-
nginx - LNMPA环境下PHP异步请求的问题
-
Nginx环境下PHP flush失效的解决方法
-
Nginx环境下PHP flush失效的解决方法
-
PHP没有数据库连接池怎么破?PHP环境下使用Nginx ngx_http_limit_req_module模块的高负载解决方案_PHP教程
-
在PHP+Apache+MySQL环境下(windows系统),连接SQLServer数据出现“can not find driver”问题的解决办法
-
debug - nginx+php开发环境的问题请教
-
各位帮帮忙,关于在XP下的PHP开发环境的有关问题
-
windows 2008 r2 下面搭建 iis+sql server +php56 环境遇见的一些问题记录一下
-
请大家进来讨论下,windows 系统下 nginx+php 是如何解决并发访问有关问题的
-
请大家进来讨论下,windows 系统下 nginx+php 是如何解决并发访问有关问题的