linux Cron定时执行带参数的PHP代码
导读
一,依然使用php脚本执行。
command 命令行填写:
php /home/jb51.net/public_html/cron.php q1 q2
然后,在cron.php页面使用 $argv[1] 来获取 q1 第一个参数值, $argv[2] 获取第二个参数 q2 的值; $argv[0] 的值是路径及文件名,在这里为:/home/jb51.net/public_html/cron.php
二,使用wget命令。
wget:Linux下的一个非交谈式的网路抓档工具。
command命令行填写:
wget -d https://www.jb51.net/cron1.php?q1=11\&q2=22
注意:
wget的用法: wget [选项] [URL]
选项:-d, --debug 显示出错的输出,即调试模式; -q, --quiet 安静模式(不输入任何讯息)。
当使用 -d 参数时,cron定时任务依然会给你发送调试信息的邮件,当你使用 -q 参数是,系统不会给你发送cron执行情况的邮件。如果你想静默的方式,你可以使用:
wget -q https://www.jb51.net/cron1.php?q1=11\&q2=22
wget方法中URL传递多个参数的时候,&符号需要转义,即 \& ;另外,需要使用绝对路径的URL。
三,另外,可以尝试用 curl 方式
命令为 :
/usr/bin/curl 'https://www.jb51.net/cron1.php?q=11&b=22' > /dev/null
或
curl --silent --compressed https://www.jb51.net/cron.php?q=1
注,飘易尝试了,第一条命令在 hostmonster 的cron下没执行成功;第二条命令在 ixwebhosting 主机下执行成功。