我在AWS EC2中创建了一个cron作业,但它无效。
我按照以下步骤创建了cron标签:
crontab -e
* * * * * php/var/www/html/welcome.php
(每分钟运行一次):wq
已创建Cron选项卡但未运行。
如果有任何PHP脚本意味着请提供给我,请帮助我。我是否需要在每颗星之间留出空格?
答案 0 :(得分:44)
首先,您需要在php
和/var
之间加一个空格:
这
* * * * * php/var/www/html/welcome.php
到
* * * * * php /var/www/html/welcome.php
^
然后,您最好使用/bin/php
而不是php
。要确定php
可执行文件的位置,请在控制台中键入which php
,它将为您提供文件路径。所以它会变成这样:
* * * * * /bin/php /var/www/html/welcome.php
^^^^^^^^
更多事情:
crontab -l
。您的新crontab行应该在那里。ls -l /var/www/html/welcome.php
。/bin/php var/www/html/welcome.php
查看它是否是脚本或crontab问题。chmod 755 /var/www/html/welcome.php
让我们更新,以便我们找到导致错误的原因。
答案 1 :(得分:3)
据我所知,在EC2上运行cron与在任何* nix服务器上运行没有任何不同。 我会检查系统消息是否有任何错误。您还可以将stderr / stdout重定向到
中的文件 * * * * * <your script> >> /var/tmp/out.log 2>&1
并检查初学者的任何问题。
答案 2 :(得分:3)
可能为时已晚,但如果您打算每分钟运行一次该命令应该是
* * * * * php /var/www/html/welcome.php