找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1569|回复: 0
打印 上一主题 下一主题

php中mail函数发送邮件失败的解决方法

[复制链接]

2560

主题

2560

帖子

7622

积分

论坛元老

Rank: 8Rank: 8

积分
7622
跳转到指定楼层
楼主
发表于 2018-2-14 05:51:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了php中mail函数发送邮件失败的解决方法。分享给大家供大家参考。具体分析如下:
php中mail函数是一个自带的发邮件的函数,但是如果你真的要使用mail函数来发邮件那必须是要给你系统安装sendmail组件才可以,下面我就碰到mail发送不了邮件的问题,下面一起来看看解决办法吧.
之前的那台服务器转移过来后,发现网站用mail()发送邮件发不了,但是发现sendmail明明已经安装,如果没有安装sendmail可以执行,代码如下:
[U]复制代码[/U] 代码如下:yum install sendmail
对了,主机名要设置一个域名格式的,例如:jb51.net,不然重启sendmail的时候会特别久才启动起来,否则要等很久,代码如下:
[U]复制代码[/U] 代码如下:hostname jb51.net
接着看看sendmail是否正常运行,代码如下:
[U]复制代码[/U] 代码如下:service sendmail status
如果没有运行可以启动,status换成start,紧接着,编辑php.ini,可以在web环境下创建一个phpinfo,因为我用的是lnmp.
[U]复制代码[/U] 代码如下:vi /usr/local/php/etc/php.ini
再查找:;sendmail_path =,按i编辑,替换为:
[U]复制代码[/U] 代码如下:sendmail_path = /usr/sbin/sendmail -t -i
我的系统默认的是:[U]复制代码[/U] 代码如下:sendmail_path = /usr/sbin/sendmail -t -i -f
这个-f 看来是让mail函数停用了,去掉-f后mail函数工作恢复正常,紧接着,重启PHP进程,一般是:service php restart LNMP是:service php-fpm restart,Apache下可以:service httpd restart
给大家分享个php脚本测试代码,代码如下:
[U]复制代码[/U] 代码如下:
如果返回结果false说明邮件发送失败,如果返回true表示邮件发送成功.
希望本文所述对大家的php程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • 功能齐全的PHP发送邮件类代码附详细说明
  • PHPMailer邮件类利用smtp.163.com发送邮件方法
  • php邮件发送,php发送邮件的类
  • PHPMailer使用教程(PHPMailer发送邮件实例分析)
  • 使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
  • php 发送带附件邮件示例
  • phpmailer在服务器上不能正常发送邮件的解决办法
  • php邮件发送的两种方式
  • phpmailer简单发送邮件的方法(附phpmailer源码下载)
  • ThinkPHP5邮件发送服务封装(可发附件)
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端