phpmailer在服务器上不能正常发送邮件的解决办法


Posted in PHP onJuly 08, 2014

phpmailer本身是一个很不错的开源邮件类,也非常的易用简单,就是偶尔会出现程序上传到服务器上不能发送邮件的情况,在之前也有同学问过我这个问题,当时的时候总是不以为然,今天终于让我碰上了,用phpmailer 在本地测试正常,上传到服务器上就不行了,当然了是用的SMTP方式,最终确定是fsockopen 函数惹的祸,因为安全原因fsockopen 和pfsockopen 经常被服务器端关闭。解决方法如下:

而代之的应该是 stream_socket_client()函数,不过他的参数有一点不一样。

应这样更改phpmailer 的 class.stmp.php文件:

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

改为

$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()函数的。
OK ,问题解决了。

PHP 相关文章推荐
PHP文件下载类
Dec 06 PHP
Phpbean路由转发的php代码
Jan 10 PHP
WindowsXP中快速配置Apache+PHP5+Mysql
Jun 05 PHP
PHP 程序员也要学会使用“异常”
Jun 16 PHP
php DOS攻击实现代码(附如何防范)
May 29 PHP
php使用json_encode对变量json编码
Apr 07 PHP
php简单实现无限分类树形列表的方法
Mar 27 PHP
非常有用的9个PHP代码片段
Apr 06 PHP
php中Ioc(控制反转)和Di(依赖注入)
May 07 PHP
php curl批处理实现可控并发异步操作示例
May 09 PHP
ThinkPHP5 验证器的具体使用
May 31 PHP
PHP 出现 http500 错误的解决方法
Mar 09 PHP
php去掉URL网址中带有PHPSESSID的配置方法
Jul 08 #PHP
PHP大批量插入数据库的3种方法和速度对比
Jul 08 #PHP
php发送get、post请求的6种方法简明总结
Jul 08 #PHP
PHP中对各种加密算法、Hash算法的速度测试对比代码
Jul 08 #PHP
微信公众平台天气预报功能开发
Jul 06 #PHP
最常用的8款PHP调试工具
Jul 06 #PHP
一个不易被发现的PHP后门代码解析
Jul 05 #PHP
You might like
PHP的FTP学习(一)
2006/10/09 PHP
php 字符串中的\n换行符无效、不能换行的解决方法
2014/04/02 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
window.location 对象所包含的属性
2014/10/10 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
情人节单身的我是如何在敲完代码之后收到12束玫瑰的(javascript)
2015/08/21 Javascript
基于Jquery代码实现支持PC端手机端幻灯片代码
2015/11/17 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
JavaScript 判断一个对象{}是否为空对象的简单方法
2016/10/09 Javascript
详解nodejs爬虫程序解决gbk等中文编码问题
2017/04/06 NodeJs
ES6学习教程之模板字符串详解
2017/10/09 Javascript
vue2.0设置proxyTable使用axios进行跨域请求的方法
2017/10/19 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
2018/05/31 Javascript
浅析vue-router中params和query的区别
2019/12/24 Javascript
vue实现学生信息管理系统
2020/05/30 Javascript
Python使用urllib2获取网络资源实例讲解
2013/12/02 Python
python计算书页码的统计数字问题实例
2014/09/26 Python
Python实现的随机森林算法与简单总结
2018/01/30 Python
python+pandas分析nginx日志的实例
2018/04/28 Python
python 平衡二叉树实现代码示例
2018/07/07 Python
mac安装pytorch及系统的numpy更新方法
2018/07/26 Python
python读取txt文件,去掉空格计算每行长度的方法
2018/12/20 Python
Python进程间通信 multiProcessing Queue队列实现详解
2019/09/23 Python
基于Python+QT的gui程序开发实现
2020/07/03 Python
Html5嵌入钉钉的实现示例
2020/06/04 HTML / CSS
美味咖啡的顶级烘焙师:Cafe Britt
2018/03/15 全球购物
阿姆斯特丹城市卡:Amsterdam Pass
2019/12/01 全球购物
法学毕业生自我鉴定
2013/11/08 职场文书
厨房工作人员岗位职责
2013/11/15 职场文书
工程部主管岗位职责
2013/11/17 职场文书
珍爱生命演讲稿
2014/05/10 职场文书
八一建军节慰问信
2015/02/14 职场文书
个人工作能力自我评价
2015/03/05 职场文书
如何使用PostgreSQL进行中文全文检索
2021/05/27 PostgreSQL
tomcat下部署jenkins的方法
2022/05/06 Servers