想采集点东西,但是采集程序经常异常中断,要么404,要么500,甚至拒绝服务,今天找到的了解决方法。

首先我排除服务器的问题,现在美国那边是晚上,服务器负荷不会很大。

于是我连接上FTP,打开php.ini看看,发现allow_url_fopen = Off,于是把它打开,但是不起作用。

又打开php.ini,把max_input_time = 60 改为 120,没起作用, 采集仍然报错。

又加了max_execution_time = 120;upload_max_filesize = 20M。

那个上传大小虽然跟采集无关,也顺便加上。这回能采集了,但是一到17%就不动了,然后报错,有时候说MYSQL DOWN掉了,有时候说500错误。

怒!什么破SQL服务器呀,这么不稳定!

一气之下把max_execution_time、max_input_time的值都改为了3600,一个小时,不可能不行了吧!

这回我发现我的采集程序到17%报了一下错,但是继续运行了!

最后,采集成功。

看来,SQL服务器没问题,还是max_execution_time、max_input_time的值设的过小,导致采集程序还没运行完就被Kill了,不过,采集完千万要把值改回来,否则,有可能以后陷入死循环就永远出不来了!

注:只对LINUX有效,WIN主机没有Php.ini,就只能在一边无奈了!