Pas*_*TIN 132
根据wget的手册页,有一些与超时相关的选项 - 并且默认读取超时为900s - 所以我说,是的,它可能会超时.
以下是有问题的选项:
-T seconds
--timeout=seconds
Run Code Online (Sandbox Code Playgroud)
将网络超时设置为秒秒.这相当于同时指定
--dns-timeout
,,--connect-timeout
和--read-timeout
.
对于这三个选项:
--dns-timeout=seconds
Run Code Online (Sandbox Code Playgroud)
将DNS查找超时设置为秒秒.
在指定时间内未完成的DNS查找将失败.
默认情况下,DNS查找没有超时,除了系统库实现的超时.
--connect-timeout=seconds
Run Code Online (Sandbox Code Playgroud)
将连接超时设置为秒秒.
建立时间较长的TCP连接将被中止.
默认情况下,除了系统库实现的超时之外,没有连接超时.
--read-timeout=seconds
Run Code Online (Sandbox Code Playgroud)
将读取(和写入)超时设置为秒秒.
此超时的"时间"是指空闲时间:如果在下载中的任何时刻没有收到超过指定秒数的数据,则读取失败并重新开始下载.
此选项不会直接影响整个下载的持续时间.
我想用类似的东西
wget -O - -q -t 1 --timeout=600 http://www.example.com/cron/run
Run Code Online (Sandbox Code Playgroud)
应确保在超过脚本持续时间之前没有超时.
(是的,这可能是最残酷的解决方案^^)
hIp*_*pPy 30
默认超时为900秒.您可以指定不同的超时.
-T seconds
--timeout=seconds
Run Code Online (Sandbox Code Playgroud)
默认是重试20次.您可以指定不同的尝试.
-t number
--tries=number
Run Code Online (Sandbox Code Playgroud)
链接:wget man文档
因为在你的问题中你说它是一个PHP脚本,也许最好的解决方案就是简单地添加你的脚本:
ignore_user_abort(TRUE);
Run Code Online (Sandbox Code Playgroud)
通过这种方式,即使wget
终止,PHP脚本也会继续处理,直到它不超过max_execution_time
限制(ini指令:默认为30秒).
按照wget
anyay你不应该改变它的超时,根据UNIX手册 默认wget的超时时间为900秒(15分钟),WHIS要大得多,你需要5-6分钟.
归档时间: |
|
查看次数: |
127924 次 |
最近记录: |