【发布时间】:2013-09-17 22:31:05
【问题描述】:
我有一个运行我的网站的 Amazon EC2 实例(Ubuntu Server 13.04 - 64 位 [ami-bf1d8a8f])。我需要设置一个 Cron Job 来每天收到电子邮件提醒。
有没有人有任何建议或可能的解决方案?
感谢您的宝贵时间。
【问题讨论】:
标签: php amazon-ec2 ec2-ami
我有一个运行我的网站的 Amazon EC2 实例(Ubuntu Server 13.04 - 64 位 [ami-bf1d8a8f])。我需要设置一个 Cron Job 来每天收到电子邮件提醒。
有没有人有任何建议或可能的解决方案?
感谢您的宝贵时间。
【问题讨论】:
标签: php amazon-ec2 ec2-ami
这与通过命令行在任何其他服务器上设置 cron 作业相同。
/etc/cron.daily
您可以使用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
如果您需要更多解释/详细信息,请发表评论。也可以看看Basic cron job set up to execute php file daily
cron.daily 文件夹中创建一个 bash 脚本通过 SSH 连接到实例,使用 cd /etc/cron.daily 导航到每日 cron 文件夹。接下来输入sudo nano mailscript,注意没有.sh bash 扩展。我的扩展有问题,导致脚本无法运行。
在命令行文本编辑器中输入nano
#!/bin/bash
php /var/www/mail-script.php > /var/www/mail-script-log.txt
现在保存文本文件并退出,保存使用CTRL + O然后回车,退出按CTRL + X。
我们需要允许文件被执行,输入sudo chmod +x mailscript。
要对其进行测试,请键入 ./mailscript 以在 cron.daily 中运行 cron。现在检查您的电子邮件!
【讨论】: