[英]problem sending out emails using a cron job
我基本上有一个普通的php邮件功能脚本,它应该经常使用cron作业运行,但是如果我手动运行脚本,有些电子邮件在实际工作时不起作用。
例如,在我的hoshing cron控制面板中,我输入domain.ca/pear/Mail/test_mail.php
我没有输入正确的网址吗? 我应该使用某种cron作业命令
require_once('Mail.php');
require_once('../Mail_Mime/mime.php');
$mail = Mail::factory("mail");
$headers = array("From"=>"me@example.com", "Subject"=>"Test Mail");
$body = "This is a test!";
$mail->send("example@gmail.com", $headers, $body);
这正是我的电子邮件脚本
此外,cron适用于某些电子邮件地址,如gmail。
因此,像我的学校这样的电子邮件在cron中不起作用,但在手动执行时起作用。 此外,脚本使用cron更新数据库..
我在.sh文件中有这个:
/usr/local/nf/php5/bin/php -f ./test_mail.php
您不能将URL单独放在cron规则中。 在cron规则中使用基于文本的浏览器,如lynx
或wget
:
* * * * * wget http://mypage.com
您可能希望为wget
或lynx
添加一些参数,以便它不会在服务器上保存输出,而只是模拟提取。 或者将输出文件夹重定向到/tmp
或/dev/null
以使其浪费。 检查相关工具的手册页:
man wget
或wget --help
通过壳牌。
你也可以像Artefact2推荐的那样: * * * * * php script.php
。 您可能需要在PHP代码的顶部添加PHP的shebang声明:
#!/usr/bin/php
<?php
// your PHP code here
Shebang需要指向系统中正常运行的PHP可执行文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.