温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

WordPress发送邮件提示“您的主机禁用了Mail函数”怎么办

发布时间:2021-01-05 10:10:39 来源:亿速云 阅读:310 作者:小新 栏目:建站服务器

这篇文章将为大家详细讲解有关WordPress发送邮件提示“您的主机禁用了Mail函数”怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

具体问题情况

  最近在查找主题BUG的时候发现一个很有趣的现象,就是 SMTP 邮箱设置的问题,评论回复是可以是可以不正常发送的,但是却没有任何审核的提示,通过邮箱找回出现如下错误:

  无法发送电子邮件。

  可能原因:您的主机禁用了mail()函数。

  检测mail函数是否禁用

  使用PHP探针来检测主机商是否禁用了mail函数。

  PHP探针代码如下,保存为php文件上传到服务器打开就可以测试出来:

 <!--?php if (function_exists('mail')) { echo "支持mail()函数!"; } else echo "不支持mail()函数!"; ?-->

  解决方案

  本来以为是衡天主机禁用了mail()函数,但是通过PHP探针发现,并没有禁用。

  下面提供禁用和支持mail函数都出现mail函数被禁用的解决方案给大家,亲身经历啊,别再有人栽倒这里了。

  主机禁用mail函数解决方案

  通过上面的PHP探针,如果发现主机禁用了mail函数则直接使用SMTP发送邮件来代替原来的mail函数

  在这里送上使用的SMTP邮箱设置代码(示例为博客邮箱设置),丢进 functions.php 就行了。

 function mail_smtp( $phpmailer ){
  $phpmailer->From = “lijie@php2.cc”; //发件人
  $phpmailer->FromName = “PHP二次开发”; //发件人昵称
  $phpmailer->Host = “smtp.ym.163.com”; //SMTP服务器地址
  $phpmailer->Port = 25; //SMTP端口,常用的有25、465、587,具体谷歌百度
  $phpmailer->SMTPSecure = “”; //SMTP加密方式,常用的有SSL/TLS,具体谷歌百度
  $phpmailer->Username = “lijie@php2.cc”; //邮箱帐号
  $phpmailer->Password = *; //邮箱密码(缙哥哥就用星号代替了)
  $phpmailer->IsSMTP(); //使用SMTP发送
  $phpmailer->SMTPAuth = true; //启用SMTPAuth服务
  }
  add_action(‘phpmailer_init’,’mail_smtp’);

  主机支持mail函数解决方案

  如果测试支持mail函数往下看:

  由于之前只有测试管理员的邮箱,后来我试着注册新用户,使用邮箱找回密码的功能,结果邮件正常发送,毫无意外。

  接着,我更换SMTP邮箱账户为163邮箱,重新用管理员邮箱找回密码,结果也是正常接收,毫无意外。

  终于,大彻了,原来收件邮箱和发件邮箱不能相同。这个结果另我很意外,居然是出现在这么小的环节上,弄得我以为是主题问题,更改了好几次代码,囧,不过也因此修复了一个重大BUG。折腾啊,年轻不折腾还什么时候折腾。

  不过话说回来,自从更换了163邮箱后,163邮箱里就收到一大堆的审核啊,评论回复啊,注册啊的邮件提醒,神烦有木有,干脆就单独弄个管理员邮箱作为发件邮箱,这样就可以有效减少接收的邮件,这下子耳根子清静了。

关于“WordPress发送邮件提示“您的主机禁用了Mail函数”怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI