最近为了省钱, 把博客从啊里云主机迁移至乐道主机, 速度还可以, 但是用了一段时间, 问题出现了, 邮件死活发不出去
我用的是smtp插件, 相同配置, 在本地机器测试, 可以正常发送, 但是在服务器上, 发送邮件一直卡着不动, 直到超时,
在网上查了各种资料, 然后检查了wordpress的smtp邮件发送类class-smtp.php, smtp邮件发送必须开启fsockopen或stream_socket_client函数,
于是写了个方法测试
function_exists(‘stream_socket_client’) 返回 true,
function_exists(‘fsockopen’) 也返回 true,
都返回true, 猜想, 估计空间商做了什么限制, 找客服一问, 果然空间不支持smtp的, 也就是这两个方法, 都不能正常使用的, 这个时候, 只能使用第三方邮件发送了.
国内第三方邮件发送的, 我找到了 sendcloud, 另外配上一个插件 名字叫 <<搜狐 Send Cloud>> 完美解决。
具体解决方法
1. 下载sendcloud插件
下载地址: https://pan.baidu.com/s/1qYTingg
解压密码, 见 http://www.sgzhang.com/extracting-password
2. 解压并上传sendcloud插件至网站的wp-content/plugins/ 目录
3. 登陆wordpress管理后台启用sendcloud插件
4. 到网站 http://sendcloud.sohu.com 注册账号并登入
5. 新增发信域名并验证发信域名
在 sendcloud后台>更多域名配置>新增发信域名 添加自己的网站域名,并配置域名解析记录, 参考 https://sendcloud.kf5.com/posts/view/59529
这里需要注意的是, 如下图红框这两个txt记录, 如果按要求主机记录设为www会验证不通过, 必须改为@
6. 新建API_USER
在 sendcloud后台>更多API_USER和API_KEY设置>创建API_USER 新建API_USER
7. 生成API_KEY
8. Send Cloud 插件设置
回到wordpress网站后台, 在设置里面找到 Send Cloud 设置进去, 分别填写 触发邮发信用户名 触发邮发信密码 触发邮邮件发送者 触发邮邮件发送者的名称
其中 触发邮发信用户名 触发邮发信密码 分别为 API_USER API_KEY 必须准确填写, 其它可以随意填写
9. 测试是否正常发送
设置好后, 可以去登陆找回密码页, 填入邮件测试是否正常发送
本文转载幽戏的技术博客,如禁止转载请与我们联系
原文链接:http://www.sgzhang.com/a/use-third-party-mail-platform-solve-share-host-not-support-smtp-sent.html