大佬教程收集整理的这篇文章主要介绍了php – mail()无法在新服务器上运行,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
if(mail('test@email.com','test-subject','test-text-blablabla')) echo 'ok'; else echo 'bad';
我该怎么办?
谢谢.
我在php.ini的邮件部分:
[mail function] ; For Win32 only. ; http://php.net/smtp SMTP = localhost ; http://php.net/smtp-port smtp_port = 25 ; For Win32 only. ; http://php.net/sendmail-from ;sendmail_from = me@example.com ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ; http://php.net/sendmail-path ;sendmail_path = ; Force the addition of the specified parameters to be passed as extra parameters ; to the sendmail binary. these parameters will always replace the value of ; the 5th parameter to mail(),even in safe mode. ;mail.force_extra_parameters = ; Add X-php-OriginaTing-Script: that will include uid of the script followed by the filename mail.add_x_header = On ; The path to a log file that will log all mail() calls. Log entries include ; the full path of the script,line number,To address and headers. ;mail.log =
首先,您需要安装sendmail
apt-get install sendmail
接下来,您必须配置比我想象的更容易的文件
sendmailconfig
好吧,我制作的下一步是php.ini配置(我不是一个很棒的管理员,我是初学者,所以我不知道是否有必要.)
我设置
sendmail_path= /usr/sbin/sendmail -t -i
好的,从这一刻起,理论上,您可以发送电子邮件,但对于我的情况,它导致504 http错误网关超时.但正如我后来发现的那样,电子邮件已经发送到电子邮箱.
所以,我的测试php文件是:
<?php mail('myWorkingEmail@example.com','test','you done that'); echo 'ok'; // I use this to check that script is end the execution ?>
这很清楚.
下一个问题是504错误.我去了日志文件
nano /var/log/mail.log
在这里我发现这个错误(这不是唯一的一个错误,但是那个错误导致了504错误):
sm-msp-queue[***]: My unqualified host name (myhostName) unknown; sleeping for retry
然后,找到我如何解决这个麻烦:
http://forums.fedoraforum.org/archive/index.php/t-85365.html最后评论该页面.
或者我说的另一个词:
nano /etc/hosts
在该文件中,我更改了主机的顺序
127.0.0.1 my_ip localhost myhostname
保存,完成.打开你的测试php文件,没有任何504错误和电子邮件是你在邮件功能中提到的电子邮件的收入.正如我所说,我是一个新手,这可能不适合你,但无论如何它对我有用.当然,这不是最终配置.希望你觉得它有用.
以上是大佬教程为你收集整理的php – mail()无法在新服务器上运行全部内容,希望文章能够帮你解决php – mail()无法在新服务器上运行所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。