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

Windows本地Drupal 10开发环境出现GuzzleHttp连接拒绝错误排查

解决Windows本地Drupal 10开发环境Guzzle连接拒绝问题

问题核心

浏览器能正常访问目标URL,但本地Drupal的Guzzle请求、命令行ping都报连接拒绝,本质是不同环境的网络配置不统一,比如代理、DNS解析、权限隔离等差异导致的。

具体解决办法

1. 同步代理配置

浏览器可能自动使用了代理,但PHP(Guzzle)和命令行没继承这个设置:

  • 先查系统代理:打开「设置」→「网络和Internet」→「代理」,记下代理地址(比如127.0.0.1:7890)。
  • 给Guzzle手动加代理:在模块的请求代码里补充代理参数:
$client = new \GuzzleHttp\Client([
    'proxy' => 'http://127.0.0.1:7890', // 替换成你的实际代理地址
]);
  • 命令行临时设置代理:打开CMD输入以下命令,之后重启本地开发服务器(XAMPP/WAMP等):
set HTTP_PROXY=http://127.0.0.1:7890
set HTTPS_PROXY=http://127.0.0.1:7890

2. 修复DNS解析差异

浏览器可能用了自定义DNS,而系统默认DNS解析不到目标域名:

  • 先查目标IP:浏览器按F12打开开发者工具→「网络」标签,找到目标请求,查看「远程地址」里的真实IP。
  • 修改hosts文件:用管理员权限打开记事本,编辑C:\Windows\System32\drivers\etc\hosts,添加一行IP映射:
192.168.xxx.xxx auth.mywebsite.io
  • 刷新DNS缓存:CMD里输入ipconfig /flushdns。

3. 排查防火墙/安全软件拦截

部分安全软件会拦截非浏览器发起的HTTPS请求:

  • 临时关闭Windows Defender防火墙:「控制面板」→「Windows Defender防火墙」→「关闭防火墙」(仅测试用,之后务必重新开启)。
  • 检查第三方安全软件(360、腾讯电脑管家等)的拦截规则,把本地服务器进程(apache.exe、php.exe)加入白名单。

4. 容器化环境的网络适配

如果用Docker运行Drupal,容器网络可能和宿主机隔离:

  • 将容器网络切换为桥接模式,或者在Dockerfile中添加代理环境变量:
ENV HTTP_PROXY=http://host.docker.internal:7890
ENV HTTPS_PROXY=http://host.docker.internal:7890

内容的提问来源于stack exchange,提问作者Happy Coder

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 00:45:33