国内主机服务商,包括阿里云在内,默认状态是不支持邮件发送功能的。如果使用了这种主机空间来搭建网站,需要通过第三方SMTP服务器来实现网站的邮件发送功能。当然,如果你使用的是WordPress搭建的网站,那么,非常简单,安装配置一下SMTP插件就可以了。
这里,WPPOP推荐使用WP Mail SMTP 和 Easy WP SMTP 来实现解决阿里云主机搭建的WordPress网站无法发送邮件的问题,简单设置后就可以轻松实现通过第三方SMTP(比如QQ、163)来实现网站的邮件发送接收功能了。以插件为例,“WordPress网站邮件收发插件 – Easy WP SMTP”这里有详细的设置教程。其他类似SMTP插件设置方法大同小异,可以参考。
有WordPress独立站建站客户反馈,使用相关SMTP插件设置后,仍然无法实现网站的邮件发送功能。测试会出现类似“smtp error could not connect to smtp host.”的错误提示。
经过WPPOP对阿里云主机的排查,问题出在了主机管理的中高级环境设置项的 PHP.ini 设置上。
解决方法如下
登录阿里云控制台,进入主机管理控制台,在左侧的功能菜单中,依次找到 高级环境设置 – PHP.ini 设置,如下图所示:
在其中的 PHP函数设置 中,将 PHP函数fsockopen设置项,改为 启动 状态,如上图所示。之后,保存设置即可。
开启fsockopen函数之后,就可以解决安装SMTP插件后还无法进行邮件发送的问题了。
fsockopen — 打开 Internet 或 Unix 域套接字连接,用于打开网络的 Socket 链接。除了实例模拟生成 HTTP 连接之外,还能实现很多功能,比如模拟post 和 get 传送数据的方法。更多详细介绍可以访问百度百科。