php网站在服务器上邮件发送不了,在本地可以

php网站在服务器上邮件发送不了,在本地可以

标签:
php
邮箱
2015-11-27 13:58
879人阅读
评论(0)
收藏
举报

php网站在服务器上邮件发送不了,在本地可以 分类:
php
(2)
php网站在服务器上邮件发送不了,在本地可以

版权声明:本文为博主原创文章,未经博主允许不得转载。

最近在做phpmailer发送邮件功能里发现了一个问题,网站程序在本地测试邮件可以正常发送到指定的邮箱。

但是把代码放到空间上面,邮件发不了,提示发送出错!研究半天没有搞懂为什么 ……(高手勿喷)

后来上网找了一下,有人说是服务器商因为安全原因把PHP 的 fsockopen 函数给关闭了。

于是按照网上的解决方法把fsockopen函数替换了,方法如下:

首先找到 phpmailer 的 class.stmp.php文件:

  1. $this->smtp_conn = @fsockopen( $host,    // the host of the server  
  2.                                   $port,    // the port to use  
  3.                                   $errno,   // error number if any  
  4.                                   $errstr,  // error message if any  
  5.                                   $tval);   // give up after ? secs  

把“ @fsockopen”改为“@stream_socket_client”(注意两个函数的参数是不一样的)

 

1
2
3
4
$this
->smtp_conn = @stream_socket_client( 
$host
.’:’.
$port
,    
// the host of the server
                                  
$errno
,   
// error number if any
                                  
$errstr
,  
// error message if any
                                  
$tval
);   
// give up after ? secs

这里 PHP版本应高于 5.0 的,因为较早版本没有stream_socket_client()函数的。

另外如果服务器商没有把pfsockopen函数关闭的话也可以使用这个函数替换,这个函数的写法跟“fsockopen”是一样的,所以这里就不贴代码了。

提醒一下如果你是使用的万网的主机可以自己主机管理里面的高级设置中看一下是不是fsockopen函数被关闭了。

阿里云主机设置:

fsockopen函数
您是想问

Linux 系统云虚拟主机 PHP.ini设置

问题场景:

使用虚拟主机过程中,客户经常需要开启相关函数和设置环境参数,该操作客户可以自行完成。

操作方法:

登录到 主机管理控制台 > 高级环境设置 ,即可显示您需要修改的函数和环境参数。选择后,单击 保存设置 即可。

如下截图:

17.png

如问题还未解决,请联系售后技术支持

阿里云:会员中心–》左侧的虚拟机–》选中虚拟机–》高级环境配置—》php.ini配置

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114274.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JavaScript 开发者年度调查报告

    JavaScript 开发者年度调查报告

    2022年3月3日
    37
  • SQL Server 2008安装教程

    SQL Server 2008安装教程1,打开后点击左边项中的“安装”。2,点击右边第一项。3,点击“确定”。4,输入产品密匙PTTFM-X467G-P7RH2-3Q6CG-4DMYB后点击“下一步”。5,安装好后在下一界面点击“全选”并设置共享目录。6,接着是“实例配置”界面,在此界面选择“默认实例”,并设置实例根目录。7,到了“服务器配置”页面,我们需要根据自己所需进行相关设置。点击对所有服务使用

    2022年6月23日
    23
  • Java实现AD域登录认证「建议收藏」

    Java实现AD域登录认证「建议收藏」web项目中有时候客户要求我们使用ad域进行身份确认,不再另外做一套用户管理系统。其实客户就是只要一套账号可以访问所有的OA,CRM等办公系统。这就是第三方验证。一般有AD域,Ldap,Radius,邮件服务器等。最常用的要数AD域了。因为window系统在国内占据了大量的江山。做起来也很方便。我这篇文章就是写,如何用java去实现AD域的身份验证。好了,直接看代码吧:

    2022年5月16日
    33
  • 无需插件只使用浏览器下载b站视频

    无需插件只使用浏览器下载b站视频2017.10.07更新:由于现在bilibili更改了refer的Host并使用了防盗链,原文的方法直接下载会有403错误,在博主琢磨出新的抓包方法之前可以先使用以下的方法:在bilibili网址前加上kan,然后回车,加载出来的东西应该就很直白了。例子:地址栏中的https://www.bilibili.com/video/av11175437/加上kan以后变成https:

    2022年7月12日
    22
  • error: #5: cannot open source input file “xxx.h“: No such file or directory

    error: #5: cannot open source input file “xxx.h“: No such file or directoryerror:#5:cannotopensourceinputfile”xxx.h”:Nosuchfileordirectory关于新加一个.c文件编译后为何报错,是因为.h没有加进工程里面。只需要几步,然后找到.h文件所处的文件添加进去,编译,就不会报错了。…

    2022年7月14日
    13
  • pycharm如何设置背景图片_电话背景图片怎么设置

    pycharm如何设置背景图片_电话背景图片怎么设置打开Pycharm点击左上角File如图:然后选择找到Settings点击进入,打开Appearance&Behavior,选择Appearance如图:最后找到BackgroundImage,选择好自己要设置的图片,Opacity可以调解好透明度,点击OK就可以了看效果:…

    2022年8月29日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号