我通过PHP发送联系表单响应,分别是PHPmailer。它是从VPS发送的,带有Debian& ISPConfig&安装了Apache。电子邮件发送正常,Gmail可以毫无问题地收回。但是当我打开"原始邮件代码"发件人电子邮件错误:
Return-Path: <web1@server1.example.com>
导致SPF通知:
google.com: web1@server1.example.com does not designate permitted sender hosts
这当然会导致其他一些网络邮件提供商不再收到此电子邮件。
我查看了php.ini和其他一些配置,但我找不到我在哪里设置它。
是否可以通过PHPmailer(最佳选项)更改此内容?(或者至少以某种PHP方式?)
或者我是否必须在服务器选项端设置它 - 如果是这样 - 在哪里?
修改
我已设法通过$mail->Sender = MY@SENDER.ADDRESS;
更改地址本身,但仍未指定
之前的 EDIT 解决了电子邮件提供商没有收到电子邮件的问题 - 现在它没有问题,但我仍然想解决在哪里正确设置SPF所以我会解决< em>指定问题。
答案 0 :(得分:1)
对于默认用户,web1 @ server1看起来像ISP Config。
尝试:
$头= “返回路径:name@example.com \ r \ n” 个;
在你的php中...需要在邮件地址周围做出更大更小的标志......但是我不能让它们在这里展示。
Nicer将检查ISP配置手册......我绝对肯定你不是第一个使用该面板并且遇到这个问题的人。不建议更改或添加到php.ini,因为这会为所有用户更改它。
答案 1 :(得分:1)
您必须将SPF记录添加到server1.example.com域的DNS区域。
类似“v = spf1 a mx a:server1.example.com~all”
Microsoft的good wizard有助于构建SPF记录。
我担心PHP无法帮助你。
答案 2 :(得分:1)
“......未指定允许的发件人主机”
请注意这不是错误。这只是一个事实的陈述,对您的可传递性几乎没有影响。存在SPF记录可以提高您的可传递性,但缺席不会使情况变得更糟。
您无法从PHPMailer更改SPF。它必须进入您的DNS服务器。
要检查DNS中的内容,请安装应包含dnsutils
实用程序的dig
包。然后,您可以像这样查找DNS记录:
dig txt google.com
; <<>> DiG 9.9.5-3-Ubuntu <<>> txt google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58518
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 5
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;google.com. IN TXT
;; ANSWER SECTION:
google.com. 3427 IN TXT "v=spf1 include:_spf.google.com ip4:216.73.93.70/31 ip4:216.73.93.72/31 ~all"
;; AUTHORITY SECTION:
google.com. 154413 IN NS ns2.google.com.
google.com. 154413 IN NS ns4.google.com.
google.com. 154413 IN NS ns3.google.com.
google.com. 154413 IN NS ns1.google.com.
;; ADDITIONAL SECTION:
ns1.google.com. 154332 IN A 216.239.32.10
ns2.google.com. 154332 IN A 216.239.34.10
ns3.google.com. 154332 IN A 216.239.36.10
ns4.google.com. 154332 IN A 216.239.38.10
;; Query time: 19 msec
;; SERVER: 217.70.184.225#53(217.70.184.225)
;; WHEN: Thu Nov 20 14:52:33 CET 2014
;; MSG SIZE rcvd: 263
在那里你可以看到查找google.com的TXT记录,并提供你的SPF(由于ip4
条款应该在include
之前,它实际上略微次优。) / p>