加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – SMTP服务器响应:550 5.7.1无法中继 – 将电子邮件发送到

发布时间:2020-12-13 17:16:54 所属栏目:PHP教程 来源:网络整理
导读:这是我的代码: ?phpmail('myemail@gmail.com','Test','Test');? 发送到非公司地址时,我收到以下错误: Warning: mail(): SMTP server response: 550 5.7.1 Unable to relay in C:inetpubwwwrootinternal_toolsincludemail.php on line 2 将电子邮件地
这是我的代码:

<?php
mail('myemail@gmail.com','Test','Test');
?>

发送到非公司地址时,我收到以下错误:

Warning: mail(): SMTP server response: 550 5.7.1 Unable to relay in C:inetpubwwwrootinternal_toolsincludemail.php on line 2

将电子邮件地址切换为我的工作电子邮件时,它可以正常工作.我的PHP.ini也很好看:

[mail function]
; For Win32 only.
; http://php.net/smtp
;SMTP = localhost
SMTP = PCMAIL1.mycompany.com
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = no-reply@mycompany.com

甚至在IIS7中设置了站点:

有任何想法吗?

解决方法

为防止 abuse for sending spam,许多电子邮件服务器要求在中继邮件(将其转发到收件人的电子邮件服务器)之前将客户端作为合法用户进行身份验证.您已在IIS中指定凭据;但是,PHP没有使用它们.

以下是您的选择:

>使用支持SMTP身份验证的现有PHP邮件程序库(PEAR Mail,phpmailer,Swift Mailer等),而不是mail()函数.
>安装并配置msmtp或其中一个备选方案(此处为how to make msmtp work with PHP).如果您相应地设置sendmail_path,PHP将执行该程序,该程序支持SMTP身份验证.>更改邮件服务器的配置以允许从Web服务器的IP地址中继邮件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读