linux PHPMailer 发送邮件sendmail 发邮件失败问题

linux PHPMailer 发送邮件sendmail 发邮件失败问题,第1张

1、用的腾讯云服务器,折腾了很多资料,发现改错了。谨记检查端口25开放

2、TP框架用PHPMailer 发送邮件,windows本地测试正常,上传到腾讯云linux服务器就发送不成功:

细节如下: [root@VM_82_192_centos ~]# tail -40 /var/log/maillog

把class.phpmailer.php中的$this->mailer = smtp中的smtp换成大写:SMTP。说是因为qq 163等邮箱需要接受发送过来的大写的SMTP

发现还是不成功

反过头来检查25端口:

发现没反应:yum重装sendmail,还是同样。直接杀到云服务器哪儿,检查25端口是否开放;泪流满面:赶紧解封。

确认:

OK,测试发送 mail -s '33333333555ksTest mail' [email protected] </etc/passwd

直接用yum安装,命令:yum

install

sendmail,安装好了,就开始启动,命令

:/etc/init.d/sendmail

start

,显示启动完成,然后开始测试发邮件,$rs=mail('[email protected]','这个是主题','

这个是内容')var_dump($rs),输出结果是true,可查看邮件,却发现没收到任何邮件。一开始怀疑是php配置那里没

设置好对应的sendmail路径,改好php.ini配置后,却发现还是收不到邮件。检查了sendmail是否已经启动,命

令:/etc/init.d/sendmail

status,结果发现出现如下错误:sendmail已死,但是subsys被锁。然后网上查了一下,怀

疑是跟postfix冲突了,把postfix干掉,命令:/etc/init.d/postfix

stop,再重新尝试发送邮件,结果还是失败。

纠结啊,到底什么问题呢,网上搜啊搜。

最后,查看了下管理员的邮件,命令:less

/var/spool/mail/root,有个发现:

打开网易邮箱回馈回来的信息,根据对应的550错误码,发现网易邮箱提示发件人的地址不符合法。

然后我尝试修改主机名,命令:hostname

[email protected],再重新尝试发送邮件,功夫不负有心人啊,

注意:有些发出去了可能会在垃圾邮件哦,像qq邮箱针对sendmail做了过滤,有谁知道需要做什么设置,才可以不被过滤

补充:sendmail发送不了邮件

没有找到,对它的配置也不熟悉,网上没有找到方法

运行yast删除了,重新安装

linux-qebs:/srv/www/htdocs

#

rpm

-qa

|

grep

sendmail

sendmail-8.14.3-51.5.1.i586

sendmail

-bd

-q12h

vi

/etc/sendmail.cf

修改配置

原来为

Timeout.ident=5s

修改后

Timeout.ident=0s

/etc/init.d/sendmail

status

没有自动启动

/etc/init.d/sendmail

restart

sendmail

'aaaa'

[email protected]

你好很高兴回答您的问题:

排查流程,检查网络,域名解析是否正常

防火墙是否放行邮件25或465端口

检查是否配置/etc/mail.rc

如果是云服务推荐使用465发送邮件,不容易屏蔽.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8668906.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存