• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    Discuz! X2.0 邮件发送返回错误信息的解决方法

    发布者: 怀卉 | 发布时间: 2025-6-19 09:08| 查看数: 79| 评论数: 0|帖子模式

    最近在安装Discuz!X2.0时,检测邮件设置时,总是提示“邮件发送返回错误信息”。(如图)。
    本人环境配置为:
    Linux 虚拟主机
    服务器软件:Apache
    服务器数据库:MySQL


    百度一下,发现不少站长都遇上了这个问题,网上都是千篇一律的转载一篇Discuz的官方教程,但是根本无法解决“邮件发送返回错误信息”的问题。
    经过几天不停的百度与GOOGLE,总结出现此类错误的大多数服务器为虚拟主机,原因是有些主机商为防止垃圾邮件,屏蔽了了25端口(25端口为SMTP即Simple Mail Transfer Protocol,简单邮件传输协议)。从而导致了“邮件发送返回错误信息”。
    解决方法一
    Discuz论坛hixinqin同学提供的方法:找到程序里的 fsockopen 函数,替换为:pfsockopen,即可解决所有问题,两个函数的区别在于 pfsockopen 保持 keep-alive,使得黑客无法进行连接数攻击。已知使用 fsockopen 函数的程序文件路径(在fsockopen 前加 p, 即fsockopen 修改为 pfsockopen 即可 ):
    Discuz X2 安装提示不支持fsockopen:
    将 /include/install_var.php 文件里的
    $func_items = array('mysql_connect', 'fsockopen', 'gethostbyname', 'ile_get_contents', 'xml_parser_create');
    替换为:
    $func_items = array('mysql_connect', 'pfsockopen', 'gethostbyname', 'file_get_contents', 'xml_parser_create');
    即可正常安装。
    X2邮件相关包含fsockopen的文件:
    \source\function\function_mail.php 邮件相关
    \uc_client\lib\sendmail.inc.php 邮件相关
    \uc_server\lib\sendmail.inc.php 邮件相关
    PS:如果你在后台邮件测试提示错误,不必担心,测试邮箱还是会有邮件收到的!
    相关教程地址:www.discuz.net/thread-2478985-1-1.html
    解决方法二
    登录网站虚拟空间后台(以下已bluehost虚拟主机为例):
    进入Bluehost的cPanel,cPanel--》Email Accounts--》Add a New Email Account
    2、指定一个新的Email帐户,比如帐户名sfz99,并选择一个需要关联与之的域名比如sfz99.com,建立邮箱账号:admin@sfz99.com。
    3、创建密码(建议使用密码生成器,防止密码过于简单)。


    在DISCUZ邮件发送方式中选择第一项“通过 PHP 函数的 sendmail 发送”。(根据自己对应的服务器选择)

    希望这两个方法,能帮倒还没解决这类麻烦的站长童鞋,其实最大问题就是主机商25端口的是否禁止,如果以上都不能解决,建议换一个主机空间。

    来源:https://zhuji.jb51.net/discuz/7294.html
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    ×

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表