【问题标题】:why cron job is not working from browser but works perfect from terminal为什么 cron 作业不能在浏览器上运行,但在终端上运行完美
【发布时间】:2018-02-07 15:10:04
【问题描述】:

我正在做一个需要动态设置 cron 作业的项目。为了您的承认,我正在使用 linux e2-user amazon 实例。如果我从终端运行,我已经添加了 cron 作业并且它运行良好,但当我从 Web 浏览器或邮递员运行 url 时无法正常工作。

这是我在 demo2.php 文件中的动态 cron 作业代码。

$output = shell_exec('crontab -l');

file_put_contents('crontab.txt', $output.'20 14 * * * php /var/www/html/jackpot/demo.php'.PHP_EOL);
exec('crontab crontab.txt');

当我在终端 php demo.php 中运行时,它工作正常并运行两个 cron 作业。如果我在像 http://ec2-52-23-188-162.compute-1.amazonaws.com/jackpot/demo2.php 这样的浏览器中运行相同的文件,并且在运行此文件后,我会转到我的终端并输入 crontab -l 它什么也没有显示。我不知道这出了什么问题。所有 linux 命令也都可以正常工作。

请告诉我任何完美的解决方案。

谢谢

【问题讨论】:

标签: php linux amazon-ec2 cron


【解决方案1】:

请检查当前用于访问文件的用户的文件权限。

【讨论】:

  • 我在哪里可以检查我的 linux 服务器上的权限
  • 我想也许你可以看看 cron.deny 文件。可能是那里添加了一些用户并且还给了demo2.php文件的执行权限。
猜你喜欢
  • 1970-01-01
  • 2020-05-12
  • 1970-01-01
  • 2020-03-09
  • 1970-01-01
  • 2011-11-29
  • 1970-01-01
  • 2023-04-01
  • 2021-03-19
相关资源
最近更新 更多