phpmailer的SMTP ERROR: Failed to connect to server: 10
SMTP ERROR: Failed to connect to server: (0)
SMTP connect() failed. SMTP connect() failed.
我php用的是apache,win7防火墙关了,用的邮箱也开启smtp功能了
smtp没连接上,或者你的用户名密码错误
用户名密码没错啊?我开过了smtp
我也检查了allow_url_fopen = On
extension=php_openssl.dll等等。都还是一样。
服务器也重启了。
请问还有其他可能原因么?
我的邮箱是刚刚申请的,phpmailer会不会暂时不能用?
pop3 和 smtp都设置正确了吗
使用phpmailer插件发邮件失败提示:SMTP
-> ERROR: Failed to connect to server: Connection timed out
(110) The
following From address failed: test@cozof.com Mailer Error: The
following From address failed: test@cozof.com
连接服务器失败:连接超时(110)
在本地(windows)测试的时候一切正常,一发到服务器(centos)上就提示以上错误了。本地正常说明用户名,密码都没错,设置也没错,是服务器的设置问题。到网上找了好久,都没找到可行的方法。
我是用gmail的服务,包括在iptables中添加465端口,关闭iptables,关闭selinux
都不行。测试了PHP函数fopen,fsockopen,pfscockopen都正常。期间还使用163邮箱测了下,同样提示以上错误。
后面查啊查,查到了一个贴子,http://drupal.org/node/805834 看13楼,大意是说可能是系统开启了ipv6,而php至少在v5.3.2版本前,在处理ipv6上有些已知的bug......如果是这种情况,可以把smtp的服务器直接设置成ipv4地址.....
所以来排查下。(如果你赶时间的话,直接拖到下文解决方法设置上试下吧。)
1.看下是否开启了ipv6
$ ifconfig eth0
eth0 Link
encap:Ethernet HWaddr 00:16:3B:E8:F5:26
inet addr:216.24.198.11
Bcast:216.24.198.127
Mask:255.255.255.128
inet6 addr:
fe80::216:3eff:fee8:f226/64 Scope:Link
inet6 addr:
2604:6600:5::5769:54ef/64 Scope:Global
看inet6 addr说明开启了支持ipv6
2.连接下gmail的smtp看是否能连接上,gmail的smtp的端口是 465
2.1 telnet 下
$telnet smtp.gmail.com 465
提示找不到telnet命令。
2.2 查看下是否安装了telnet
$rpm -qa|grep telnet
2.3 什么都没提示,说明没有安装。telnet有服务端和客户端,缺少哪个安装哪个。直接yum。
#yum -y install telnet
安装服务端
#yum -y install telnet-server
2.4 安装成功后编辑/etc/xinetd.d/telnet
# vi /etc/xinetd.d/telnet
把
disable = yes
改成
disable = no
2.5 开启xinetd
#service xinetd start
2.6 测试连接本地
$ telnet localhost
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
..
连接正常
2.7 连接gmail 的smtp 端口是 465
$ telnet smtp.gmail.com 465
Trying 2607:f8b0:400e:c00::6d...
有类似这么一串2607:f8b0:400e:c00::6d 的话说明连的是ipv6,一直卡着连不上。
2.8 ping 下gmail的smtp,找到它的ipv4
$ ping smtp.gmail.com
PING gmail-smtp-msa.l.google.com (74.125.141.108) 56(84) bytes of
data.
64 bytes from da-in-f108.1e100.NET (74.125.141.108):
icmp_seq=1 ttl=50 time=33.5 ms
74.125.141.108 就是它的ipv4地址
2.9 telnet 到ipv4上看下
$ telnet 74.125.141.108 465
Trying 74.125.141.108...
Connected to 74.125.141.108.
Escape character is '^]'.
出现以上这些表示可连接上。看来是默认连接到ipv6的地址上了。
3.解决方法
其中一个方法是禁用服务器的ipv6。其实更好的方法是在发送邮件的代码里把smtp的地址设置为ipv4,如下:
|
1
|
->Host "173.194.79.108"; // |
然后我测试发送了一下,成功!
所以,提示Failed to connect to server: Connection timed out (110)
The following From address
failed邮件发不了的问题之一可能是因为ipv6连接不上导致的。也跟php没什么关系,不是php的bug,因为我们这连接测试用talnet连接的,一样优先连接到的是ipv6,不是php中使用代码连的。
4.telnet 不太安全,所以测完把它给禁掉,以后有需要再开启
#vi /etc/xinetd.d/telnet
把
disable = no
改成
disable = yes
停止服务
# service xinetd stop
5.附上gmail中使用phpmailer发邮件的配置
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
分享:
0
--> 0
加载中,请稍候......
新浪BLOG意见反馈留言板 不良信息反馈 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正 新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑 Copyright © 1996 - 2017 SINA Corporation, All Rights Reserved 新浪公司 版权所有 |
phpmailer的SMTP ERROR: Failed to connect to server: 10的更多相关文章
- 使用phpmailer插件发邮件失败提示:SMTP -> ERROR: Failed to connect to server: Connection timed out (110) smtp connect() failed;
一个邮件发送问题,整整弄了我一周时间,起因是这样的,之前弄的一个网站,需要在邮箱里面认证之后才可以注册成功.网站上线了差不多一年之后,客户突然跟我说,网站不能注册了,然后我就查看了一下代码. 发现报这 ...
- linux下phpmailer发送邮件出现SMTP ERROR: Failed to connect to server: (0)错误
转自:https://www.cnblogs.com/raincowl/p/8875647.html //Create a new PHPMailer instance $mail = new PHP ...
- 腾讯云服务器SMTP ERROR: Failed to connect to server
一般邮件发送失败是 1.配置的问题. 2.扩展问题socket/ssl 百度搜出来一般都是以上的解决办法, 但是我这次遇到的不是. 本地可以放到腾讯云服务器就不行了,扩展也都开了. 后来发现是安全组端 ...
- loadrunner:Action.c(4): Error -27796: Failed to connect to server "10.8.251.101:10086": [10060] Connection timed out
Action.c(4): Error -27796: Failed to connect to server "10.8.251.101:10086": [10060] Conne ...
- LR报:Error 27796 Failed to connect to server
原错误信息: Action.c(58): Error -27796: Failed to connect to server "10.1.44.68:7013": [10048] ...
- phpmailer SMTP Error: Could not connect to SMTP host. 错误解决
今天发邮件遇到了这么一个问题:SMTP Error: Could not connect to SMTP host.在网上找了好多,都不管用.在这里我要提醒大家下 1.确保发送者邮箱密码正确,代码编写 ...
- SMTP Error: Could not connect to SMTP host
PHPMailer是一个非常棒的开源邮件类,使用也非常简单,但是对于虚拟主机来说,往往要受到各种限制.刚才我在虚拟主机上使用PHPMailer就遇到一个“SMTP Error: Could not c ...
- 解决 SMTP Error: Could not connect to SMTP host. 问题
我在使用PHPmailer发邮件时候,遇到了这个问题“SMTP Error: Could not connect to SMTP host.”,分享一下解决方法. 这个错误是PHP版本7产生的.如果我 ...
- 【LR11】Error -27796: Failed to connect to server"server:port": [10060] Connection timed out错误解决办法
场景描述:被测系统是发布在远程服务器上的,假设IP是10.10.10.10,端口是8066,那么访问地址是http://10.10.10.10:8066/,在control机器上我设置了IP欺骗. ...
随机推荐
- HTTP状态码、请求方法、响应头信息
HTTP状态码 当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求.当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应 ...
- Python的*args与**kwargs
当Python的函数的参数不确定时,可以使用*args与**kwargs来指代不定数量的参数. 两者的区别是,*args是个tuple(元组),而**kwargs是个dict(字典). 先通过代码来验 ...
- Md2All
微信公众号:颜家大少欢迎关注我,一起学习,一起进步!目前,知到 Md2All 的朋友还很少,如果你觉得有帮助,希望能告诉身边有需要的朋友. 谢谢! Md2All 简介 一个Markdown在线转换工具 ...
- vue2.0 页面A跳转到页面B,B页面停留在A页面的滚动位置的解决方法
如果页面A沿Y轴滚动一段距离,然后跳转到页面B: 在进入B页面时,B页面已经滚到页面A的距离,返回页面A,发现A还在之前的滚动位置: 这样体验就很不好,所以我们要进行一些处理: 我的方法是:在路由守卫 ...
- Scala的安装,入门,学习,基础
1:Scala的官方网址:http://www.scala-lang.org/ 推荐学习教程:http://www.runoob.com/scala/scala-tutorial.html Scala ...
- Python模块学习------ 多线程threading(1)
# Method 1: 创建一个Thread实例,传给它一个函数:import threading from time import sleep, ctime loops = [4,2] def lo ...
- Javascript中遍历数组方法的性能对比
Javascript中常见的遍历数组的方法 1.for循环 for(var i = 0; i < arr.length; i++) { // do something. } 2.for循环的改进 ...
- windows 多任务与进程
多任务,进程与线程的简单说明 多任务的本质就是并行计算,它能够利用至少2处理器相互协调,同时计算同一个任务的不同部分,从而提高求解速度,或者求解单机无法求解的大规模问题.以前的分布式计算正是利用这点, ...
- Redis in Docker on Linux Container
记录:在Docker中运行一个Redis实例当我们在Windows系统中安装好Docker以后,在Hyper-V中会自动创建一个Linux虚拟机,如果这个虚拟机没有运行,说明当前运行的是Windows ...
- Shell脚本之反引号【``】和 $()
一.奇怪的返回 今天在搞监控的时候,修改一个老脚本,主要是通过对操作系统进行判断来获取不同的监控参数.(获取top参数在不同操作系统上也有个坑,会在另外一篇里面写) 脚本如下,非常简单: #处理Cen ...
喜欢