无法在 Amazon EC2 上设置 cron-job


Unable to setup cron-job on Amazon EC2

我有一个运行我的网站的 Amazon EC2 实例(Ubuntu Server 13.04 - 64 bit [ami-bf1d8a8f])。我需要设置一个 Cron 作业才能每天收到电子邮件警报。

有人有任何建议或可能的解决方案吗?

谢谢你的时间。

这与通过命令行在任何其他服务器上设置 cron 作业相同。

  1. 通过固态度连接
  2. 导航到/etc/cron.daily
  3. 创建一个运行/调用PHP脚本以发送电子邮件/其他任务的新脚本
  4. 确保其可执行

您可以使用 wget -q -O temp.txt http://www.site.com/cron.php 等命令调用 PHP 脚本,也可以通过命令行php /var/www/site/cron.php 调用 。

关于wget方法,temp.txt将包含脚本的输出,或者您可以将输出重定向到/dev/null。这只会丢弃所有输出。如果您需要保存 cron 脚本的输出并且您决定使用命令行方法,那么您可以将数据输出到文件php /var/www/site/cron.php > output.txt

如果您需要更多解释/详细信息,请发表评论。另请查看设置为每天执行 php 文件的基本 cron 作业

步骤 1:在 cron.daily 文件夹中创建 bash 脚本

通过 SSH 连接到实例,导航到带有 cd /etc/cron.daily 的每日 cron 文件夹。下一个类型sudo nano mailscript,请注意没有.sh bash 扩展。我的扩展程序出现问题,导致脚本无法运行。

第 2 步:Bash 脚本内容

在命令行文本编辑器中输入此内容nano

#!/bin/bash
php /var/www/mail-script.php > /var/www/mail-script-log.txt

现在保存文本文件并退出,要保存使用CTRL + O,然后按回车键,要退出,请按CTRL + X

步骤 3:使其可执行

我们需要允许执行文件,键入 sudo chmod +x mailscript .

第 4 步:试用

要对其进行测试,请键入 ./mailscript 以在 cron.daily 中运行 cron。现在检查您的电子邮件!