php curl所遇到的问题和解决方法

今天遇到了一个问题,调一个第三方的接口,开发环境跟测试环境测试时均没有遇到这个问题。 生产环境预发布时经常出现了,

当我打印curl_error()得到的数据时,提示我php curl could not resolve host,然后通过下面的这个方法:(如果是域名,就需要服务器端配置DNS。看看你服务器上DNS能够解析出域名对应的ip),

然后php curl 报错:
Failed to connect to 127.0.0.1 port  549: Connection refused,然后通过下面两个方式其中一个:(1:端口有可能会被占用,换一个端口试一下。2:curl有一个配置文件,将里面的内容socks5="127.0.0.1:549"注释掉)

接下来打印curl_error(),出来的数据就是正确的了。

附:curl_errno函数错误码说明(curl_errno_array.php)

<?php
return [
'1'=>'CURLE_UNSUPPORTED_PROTOCOL (1) – 您传送给 libcurl 的网址使用了此 libcurl 不支持的协议。 可能是您没有使用的编译时选项造成了这种情况(可能是协议字符串拼写有误,或没有指定协议 libcurl 代码)。',
'2'=>'CURLE_FAILED_INIT (2) – 非常早期的初始化代码失败。 可能是内部错误或问题。',
'3'=>'CURLE_URL_MALFORMAT (3) – 网址格式不正确。',
'5'=>'CURLE_COULDNT_RESOLVE_PROXY (5) – 无法解析代理服务器。 指定的代理服务器主机无法解析。',
'6'=>'CURLE_COULDNT_RESOLVE_HOST (6) – 无法解析主机。 指定的远程主机无法解析。',
'7'=>'CURLE_COULDNT_CONNECT (7) – 无法通过 connect() 连接至主机或代理服务器。',
'8'=>'CURLE_FTP_WEIRD_SERVER_REPLY (8) – 在连接到 FTP 服务器后,libcurl 需要收到特定的回复。 此错误代码表示收到了不正常或不正确的回复。 指定的远程服务器可能不是正确的 FTP 服务器。',
'9'=>'CURLE_REMOTE_ACCESS_DENIED (9) – 我们无法访问网址中指定的资源。 对于 FTP,如果尝试更改为远程目录,就会发生这种情况。',
'11

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值