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

Gatling HTTPS代理配置问题求助:连接失败及环境变量无效

解决Gatling中HTTPS代理配置失败及环境变量不生效问题

核心问题:Proxy配置错误

你在代码里给Proxy构造器传入的${proxyHost}带了https://前缀,这是错误的。Gatling的Proxy类的host参数只需要填写代理服务器的主机名或IP地址,不需要加协议(http/https)。Gatling会根据你发起的目标请求协议(HTTP/HTTPS)自动选择对应的代理连接方式,所以不管代理是HTTP还是HTTPS类型,都只需要填纯主机地址。

正确的代码配置

把你的代码改成这样:

http.proxy(Proxy("${proxyHost}", 9000)).baseUrl("https://").headers(headers)

这里的${proxyHost}替换成不带协议的代理地址,比如proxy.example.com或者192.168.1.100。

环境变量不生效的原因及解决

Gatling默认不会自动读取系统的http_proxy/https_proxy环境变量,需要手动开启系统代理支持:

方式1:修改Gatling配置文件

找到Gatling安装目录下的conf/gatling.conf,找到http.proxy部分,设置:

http {
  proxy {
    useSystemProperties = true
  }
}

这样Gatling就会自动读取系统的代理环境变量。

方式2:代码中手动设置系统属性

在你的测试类初始化时添加以下代码:

System.setProperty("https.proxyHost", "${proxyHost}")
System.setProperty("https.proxyPort", "9000")
// 如果代理需要认证,还要加上
// System.setProperty("https.proxyUser", "yourUsername")
// System.setProperty("https.proxyPassword", "yourPassword")

方式3:启动Gatling时添加JVM参数

运行测试时,通过JVM参数指定代理:

gatling.sh -Dhttps.proxyHost=${proxyHost} -Dhttps.proxyPort=9000

额外注意事项

如果你的代理服务器需要SSL证书验证,可能还需要将代理的证书导入到Gatling使用的JVM信任存储中,避免证书校验失败的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 21:35:34