CRON命令每5分钟运行一次URL地址

Mir*_*rod 61 php cron

我是cron命令的新手,我需要帮助.

我有一个脚本http://example.com/check/.

什么是cron每5分钟运行一次这个URL的命令?

我试过了

*/5****/home/test/check.php

但我想运行URL而不是相对脚本地址.怎么做?

Yan*_*erk 101

使用cURL:

*/5 * * * * curl http://example.com/check/
Run Code Online (Sandbox Code Playgroud)

  • 只需注意,您应该通过管道连接到/ dev/null来运行curl而不输出或进展.`*/5****curl -s http://example.com/check/>/dev/null` (12认同)

Dil*_*ave 91

根据评论试试

*/5 * * * * wget http://example.com/check
Run Code Online (Sandbox Code Playgroud)

[编辑:2017年4月10日]

这个答案似乎仍然得到了一些点击,所以我想我会添加一个链接到我偶然发现的新页面,这可能有助于创建cron命令:https://crontab.guru

  • wget将创建临时文件使用 (8认同)
  • 编辑以确保没有创建临时文件(希望它被接受,但JiC)`*/5****wget -qO- http://example.com/check&>/dev/null` (5认同)
  • 我会做*/5****wget http://example.com/check --delete-after以确保没有临时文件 (3认同)

Arn*_*hot 39

使用curl的另一个好处是,你还可以继续发送参数到脚本的HTTP方式,如果你需要,利用$_GET,$_POST等等这样的:

*/5 * * * * curl --request GET 'http://exemple.com/path/check.php?param1=1&param2=2'
Run Code Online (Sandbox Code Playgroud)


小智 7

以下是 wget 脚本的示例:

wget -q -O /dev/null "http://example.com/cronjob.php" > /dev/null 2>&1

使用-O像上面这样的参数意味着网络请求的输出将被发送到STDOUT(标准输出)。

并且>/dev/null 2>&1will 指示标准输出被重定向到一个黑洞。所以没有来自正在执行的程序的消息返回到屏幕。

  • 它适用于“https”吗?如何通过这种方式忽略 SSL 问题? (2认同)