apache
重建后,我的cron
个工作停止了工作。
我使用了以下命令:
wget -O - -q -t 1 http://example.com/cgi-bin/loki/autobonus.pl
现在我的DC支持建议我将wget
方法更改为curl
。在这种情况下,正确的值是什么?
答案 0 :(得分:0)
-O -
相当于curl的默认行为,因此很容易。
-q
是-s
(或--silent
)
--retry N
将取代wget
' s -t N
总而言之:
curl -s --retry 1 http://example.com/cgi-bin/loki/autobonus.pl
答案 1 :(得分:0)
尝试使用wget的完整路径进行更改
/usr/bin/wget -O - -q -t 1 http://example.com/cgi-bin/loki/autobonus.pl
您可以找到完整路径:
which wget
以及更多,请检查您是否可以使用ping或其他方法访问目标域:
ping example.com
更新
根据评论,似乎是由/ etc / hosts中的行引起的:
127.0.0.1 example.com #change example.com to the real domain
答案 2 :(得分:0)
似乎您在cron运行的服务器上有限制选项,您将域固定为127.0.0.1
,但虚拟主机配置不适用。
您可以做的是让wget
通过IP连接,但发送Host
标头,以便虚拟主机匹配可以正常工作:
wget -O - -q -t 1 --header 'Host: example.com' http://xx.xx.35.162/cgi-bin/loki/autobonus.pl
<强>更新强>
也可能你不需要在Web服务器上运行它,所以为什么不运行:
perl /path/to/your/script/autobonus.pl