解决phpmailer可以在windows下面发送成功, 在linux下面失败的问题

谢天谢地...差点因为在linux下面phpmailer发送邮件失败转到了window+IIS...

Godaddy的linux服务器无法用phpmailer发送(我用的是网易的邮箱服务器...虽然现在转到QQ邮箱了)、自己的linux apache搭建的服务器也无法发送

网上一开始查了一些原因...

1、防火墙屏蔽了邮件端口...(Godaddy服务器怎么可能、所以排除)

2、是否支持socket、在phpinfo中查看一下就行、一般装好不乱改都开的...(我本地也开的)

 

在stackoverflow和github里面都问了一堆...github那边的一位还用我的那段代码给我发了封邮件(说明代码是正常的、而且他的linux设置应该跟我设置应该有不同)

 

他还提供了一些信息:也用Godaddy的可以去确认或者问一下(我还没确认...刚刚在本地解决就马上写这篇东西了)

”So, I did some searching, it seems GoDaddy only allow you to use THEIR own mail service, and blocks all other outgoing SMTP calls.. Hence why it doesn't work.“

后来打开了phpmailer的debug...然后看到了一句 包含 Permission (13) 的错误信息...

之后才查到 selinux 里面的一些知识

 

对于解决这个问题 你可以查看一下linux下面的这个

sestatus -b | grep httpd

解决phpmailer可以在windows下面发送成功, 在linux下面失败的问题

 

看见了吧...我的httpd_can_network_connect本来是off的

setsebool -P httpd_can_sendmail on
setsebool -P httpd_can_network_connect on

这样就行了= = 

保佑大家

 

 

你可能感兴趣的:(phpmailer)