如何在 PHP 中正确设置返回路径?

Posted

技术标签:

【中文标题】如何在 PHP 中正确设置返回路径?【英文标题】:How to set Return-Path correctly in PHP? 【发布时间】:2016-07-20 01:27:49 【问题描述】:

我从 php 发送电子邮件,它们经常被垃圾邮件过滤。

因此我尝试使用 Return-Path 标头:

<?
     $headers .= "Return-Path: ".$return_path."\r\n"; 
?>

问题是我必须在多台服务器上使用相同的软件,因此必须在 PHP 中找出正确的值。

AFAIK 返回路径必须包含来自它当前运行的服务器的反向 DNS 名称和现有用户名。

【问题讨论】:

服务器通常会为您设置正确的返回路径。您是否使用 SMTP 服务器发送邮件? “发件人:”电子邮件地址是可以接收邮件的真实有效的电子邮件地址吗? 我使用PHP的mail()函数和exim 【参考方案1】:

不正确,发送电子邮件时的返回路径是一个电子邮件地址,接收服务器可以在出现错误/问题时向其发送故障代码或消息。在email阅读此主题

如果您想使用与您正在使用的网站相对应的电子邮件地址自动填充返回路径,请使用以下内容:

$return_path = 'info@'.str_replace('www.','',$_SERVER['HTTP_HOST']);

【讨论】:

可以,但是返回路径必须指向发送消息的实际服务器,否则垃圾邮件过滤器会认为您想伪装自己的身份。 你从哪里获得了这种智慧?这对于 FROM 字段是正确的,但据我所知,它不适用于返回路径。但是,您使用了 $_SERVER var,在其中,您将看到 $_SERVER['HTTP_HOST'],您将在其中拥有运行该文件的站点主机。 我确信表单字段不是这样的——事实上,我需要在不正确的地方发送邮件。我不知道返回路径,因为我得到了相互矛盾的信息......

以上是关于如何在 PHP 中正确设置返回路径?的主要内容,如果未能解决你的问题,请参考以下文章

如何在tsconfig.ts中正确设置路径?

PHP Mail():设置返回路径导致邮件发送失败

Zend Framework,FusionCharts,PHP,Javascript

php加载 GD库后 路径写的也正确 还是无法显示图片? 到底是啥原因 ? 求答案~

如何在 angular2 路由中正确设置应用程序上下文路径?

如何在 maven-war-plugin 中正确设置清单类路径