You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP cURL使用代理时出现Connection refused错误求助

PHP cURL连接代理报错"Connection refused"的原因排查

错误信息

Failed to connect to ip port after 1000 ms: Connection refused

代码示例

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_PROXY, 'ip'); 
curl_setopt($curl, CURLOPT_PROXYPORT, 'port');
curl_setopt($curl, CURLOPT_PROXYUSERPWD,'user:pass');
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($curl);
if ($result === FALSE) {
   die(curl_error($curl));
}
curl_close($curl);

可能的问题原因

  • 代理IP/端口无效:检查代理IP和端口是否完全正确,是否存在拼写错误(比如多空格、数字错位);确认代理服务器是否处于运行状态,是否已经被服务商停用或过期。
  • 代理认证失败:CURLOPT_PROXYUSERPWD里的账号密码是否正确,若密码包含特殊字符(如:、@),需要用urlencode()转义后再拼接。另外,部分代理可能需要特定的认证方式(如NTLM),需额外设置CURLOPT_PROXYAUTH参数。
  • 网络访问限制:本地机器或服务器的防火墙、安全组是否禁止了对该代理端口的出站请求;部分运营商会屏蔽某些代理IP,可尝试换网络环境测试。
  • 代理类型不匹配:cURL默认使用HTTP代理,若你的代理是SOCKS5类型,需添加curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);,否则会导致连接失败。
  • 超时时间过短:错误显示1000ms后超时,可能网络延迟导致连接未建立就超时。可尝试延长连接超时时间,比如添加curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);(设置为5秒)。

内容的提问来源于stack exchange,提问作者James Son

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 19:25:28