我有cron,它正在使用fwrite函数,在cron运行1小时后,它将崩溃并返回错误:
fwrite():发送29个字节失败,对等设备重置了errno=104连接
在线:
$fw = @fwrite($this->sock, $msg."\r\n");
在此之后,我总是关闭连接
fclose($this->sock);
这似乎是PHP核心和DNS解析器内部的错误,因为在那之后,我有一些问题解析主机名到ip地址。在我的函数中还使用了getmxrr()
和gethostbyname()
函数。如何防止这种问题?
发布于 2018-09-13 20:15:58
经过一些实验后,我使用了更多的工作解决方案。我用socket_create和socket_connect替换了fsockopen函数,它好多了。函数fsockopen有时不能正确连接。
发布于 2018-08-03 03:58:12
我从PHP社区得到的回答是这样的:内部fwrite是流媒体的一部分代码,有时它可能会发生。他们说,在fwrite上修复它是不可能的,因为它可以改变其他功能的一些功能,这些功能也使用流媒体。所以最终它的财产不是过错。
https://stackoverflow.com/questions/51522491
复制相似问题