宝塔面板WordPress中使用Contact Form 7插件收不到邮件的解决方法
如果是宝塔面板的环境下,在WordPress中使用Contact Form 7插件提交表单时显示成功,但邮箱未收到邮件,可能是由于服务器邮件功能配置问题。以下是几种常见解决方法:
1. 检查邮件发送方式
默认情况下,Contact Form 7 使用 PHP 的 mail() 函数发送邮件,但部分服务器(尤其是国内主机)可能不支持该功能。
解决方法:
安装 WP Mail SMTP 插件,改用 SMTP 方式发送邮件。
配置 SMTP 信息(如 QQ 邮箱、Gmail 或企业邮箱):
QQ 邮箱:SMTP 主机 smtp.qq.com,SSL 加密,端口 465。
Gmail:需配置 OAuth 2.0 授权。
企业邮箱:如腾讯企业邮箱,SMTP 主机 hwsmtp.exmail.qq.com。
2. 检查邮件头设置
部分主机要求 From(发件人) 地址必须与网站域名一致,否则可能被拦截。
解决方法:
在 Contact Form 7 的邮件设置中,修改发件人地址为 yourname@wodepress.com。
在 Additional Headers(附加标头) 中添加:
From: yourname@wodepress.com
3. 检查服务器环境
如果使用 LNMP 环境(如宝塔面板),可能需要安装 sendmail 组件:
yum -y remove sendmail
yum -y install sendmail
/etc/init.d/sendmail start
并修改 php.ini 中的 sendmail_path:
sendmail_path = /usr/sbin/sendmail -t -i
然后重启 PHP-FPM。
4. 检查 MX 记录(适用于 BlueHost 等主机)
如果更换服务器后邮件无法发送,可能需要调整 MX 记录,选择 Remote Mail Exchanger 模式。
5. 检查垃圾邮件箱
部分邮件服务商(如 QQ、163)可能会将 Contact Form 7 发送的邮件归类为垃圾邮件,建议检查垃圾邮件箱。
6. 排查插件冲突
某些插件可能与 Contact Form 7 冲突,可尝试 禁用其他插件 逐一测试。
7. 检查防火墙与端口
确保服务器防火墙未拦截 25、465 或 587 端口。
如果以上方法仍无法解决,建议查看 服务器日志 或联系主机商检查邮件服务是否正常。
原文
http://wordpress.waimaoyes.com/jianzhan/10.html