【发布时间】:2018-04-15 18:55:48
【问题描述】:
我的代码有问题。所有电子邮件均以同一日期“2017 年 3 月 31 日”发送。这是邮件通知。
Return-Path: <xxxxxx@gmail.com>
Received: from ip-172-31-29-190 (ec2-xx-xxx-xx.xx.ap-south-1.compute.amazonaws.com. [xx-xxx-xx.xx])
by smtp.googlemail.com with ESMTPSA id a81sm7358557pfe.32.2017.11.02.08.27.05
for <xxxxxxxx@gmail.com>
(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Thu, 02 Nov 2017 08:27:06 -0700 (PDT)
Date: Fri, 31 Mar 2017 21:40:26 +0530
无法弄清楚问题出在哪里...感谢您的帮助。
编辑-1:
我继承了这个代码。找到以下配置:
defined('SMTP_HOST') ? null : define("SMTP_HOST", "ssl://smtp.googlemail.com");
defined('SMTP_PORT') ? null : define("SMTP_PORT", "465");
defined('SMTP_SECURE') ? null : define("SMTP_SECURE", "tls");
编辑-2:
我们的实现类似于How to build an email queue with PHPmailer?。即,所有电子邮件都写入jobs 表,然后被提取处理。
问题是电子邮件无法在我的本地和测试服务器上运行。但是,他们在生产上工作:(
当示例代码https://github.com/phpmailer/phpmailer 在这两个服务器上都运行良好时,弄清楚为什么这些东西不能在本地和测试服务器上运行已成为一项艰巨的任务。
在查看此处发布的原始问题之前,需要先解决此问题。邮件队列中没有电子邮件。有什么指点吗??
【问题讨论】:
-
你检查过服务器日期时间吗?
-
服务器日期时间很好。 date_default_timezone_set('Asia/Kolkata') 也设置为 require "modules/Database.class.php";需要“模块/常量.php”; //需要“供应商/swiftmailer/lib/swift_required.php”;需要“供应商/autoload.php”; date_default_timezone_set('亚洲/加尔各答');使用独白\记录器;使用 Monolog\Handler\StreamHandler;全局 $db,$mail,$log; // 创建一个日志通道 $mail = new PHPMailer; //$mail->SMTPDebug = 3; // 启用详细调试输出 $mail->isSMTP(); // 设置邮件使用 SMTP
-
不要在 cmets 中发布问题或代码的详细信息。将它们发布在您的问题中。
-
感谢@Synchro。根据此link 设置具有正确时区的
clock后,问题得到解决
标签: codeigniter smtp phpmailer sendmail