我有一个运行我的网站的 Amazon EC2 实例(Ubuntu Server 13.04 - 64 bit [ami-bf1d8a8f])。我需要设置一个 Cron 作业才能每天收到电子邮件警报。
有人有任何建议或可能的解决方案吗?
谢谢你的时间。
这与通过命令行在任何其他服务器上设置 cron 作业相同。
- 通过固态度连接
- 导航到
/etc/cron.daily
- 创建一个运行/调用PHP脚本以发送电子邮件/其他任务的新脚本
- 确保其可执行 性
您可以使用 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。现在检查您的电子邮件!