我有一个php脚本,可以抓取网页并将抓取的数据插入到数据库中 这个PHP脚本运行了很长时间(大约几个小时) 有时,脚本运行很长一段时间后,php脚本就会停止执行并且没有显示任何错误 问题不是由于脚本的执行时间造成的,因为我将php脚本设置为无限量的执行时间。
ini_set('max_execution_time', 0);
我还设置了php脚本来显示所有错误。
ini_set('display_errors',1);
error_reporting(E_ALL);
但是在php脚本停止执行后我没有收到任何错误 我还在其他几台计算机上运行该脚本,但我仍遇到同样的问题,所以问题不在于服务器限制。
我研究了这个问题,显然这是一个网络问题 php脚本停止与服务器通信并断开连接(可能是因为php脚本发送了http请求并且没有收到任何响应)。
我的问题是:
有什么方法可以通过php脚本检查网络断开连接,并恢复脚本并尝试重新连接,如果网络断开连接?
答案 0 :(得分:0)
首先" set_time_limit"是使用该功能的更好方法,我会检查您的服务器的规则和规定。如果它是你的私人服务器,那很好。如果您租用VPS或其他类型的服务器,很可能他们有限制以防止滥用,如垃圾邮件等。确保你符合他们的规则并从那里开始。