我收到了来自我服务器的cron信息的电子邮件。
“`client_errors'在共享对象中有不同的大小,考虑重新链接”
这是什么?这个cron作业只是一个简单的电子邮件脚本
这是脚本
include("../admin/connect.php");
require("../class.phpmailer.php");
$from = "Me@me.com";
$fromname = "Me";
$mail = new PHPMailer(true); //New instance, with exceptions enabled
$mail->IsSMTP(); // tell the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 587; // set the SMTP server port
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->Username = "********"; // SMTP server username
$mail->Password = "********"; // SMTP server password
$mail->SMTPSecure = "tls"; // sets the prefix to the server
$mail->IsSendmail(); // tell the class to use Sendmail
$mail->From = $from;
$mail->FromName = $fromname;
$mail->Subject = "Hi";
$edate = date("Y-m-d");
$query = "SELECT * FROM `set` WHERE expire = '$edate'";
$result = MYSQL_QUERY($query);
while ($row = mysql_fetch_array ($result))
{
$body .= "<pr>Hello<br /><br />";
$body .= "Hope everything is ok,<br />";
$text_body = "To view the message, please use an HTML compatible email viewer!";
$mail->Body = $body;
$mail->AltBody = $text_body;
$mail->AddAddress($row['email']);
$mail->Send();
$mail->ClearAddresses();
}
感谢
答案 0 :(得分:0)
你正在运行的东西期望变量(结构或数组,可能)具有特定的大小N.不幸的是,提供该变量值的共享库具有不同的大小M.“重新链接”的请求是也许有点幼稚;它可能意味着使用新标题重新编译和重新链接等。
因此,需要重建脚本中使用的某些程序。
根据修正后的问题:
我认为这可能是一个问题。需要担心的一件事是cron运行的PHP是否具有正确的环境 - cron没有设置很多环境。它可能正在执行一个PHP,但试图从另一个加载库,或者像那样奇怪的东西。
我对运行cron作业的标准建议总是运行一个shell脚本,在运行“真实”任务之前根据需要设置环境。这也使调试更容易。
{
...environment setting...
env # debug only
pwd # debug only
date # debug only
...exec the real program...
} >/tmp/log.$$ 2>&1