HTTPS nonProxyHosts的JVM参数

Bob*_*Bob 7 java jvm environment-variables jvm-arguments

所以我有一个相当负载的env变量 _JAVA_OPTIONS

export _JAVA_OPTIONS="-Dhttp.proxyHost=my-proxy.com -Dhttp.proxyPort=1080 
  -Dhttps.proxyHost=my-proxy.com -Dhttps.proxyPort=1080 
  -DsocksProxyHost=my-socks-proxy.com 
  -Dhttp.nonProxyHosts=\"localhost|127.0.0.1|*.local|*.my-co.com\""
Run Code Online (Sandbox Code Playgroud)

但是当我使用Apache HTTP客户端API从Scala代码尝试时,我无法忽略内部服务器URL.

https://username:pwd@server.my-co.com/foo/bar
Run Code Online (Sandbox Code Playgroud)

我是否需要nonProxyHosts为HTTPS 指定其他内容?文档没有指定这样的参数.我错过了什么?我在Mac上.

小智 6

这个答案是针对主要问题的,无论出于何种原因,我最初认为这是特定于 ColdFusion 的。

它很少被记录,但您可以使用 https 非代理主机参数:

-Dhttps.nonProxyHosts=
Run Code Online (Sandbox Code Playgroud)

许多文档说明-Dhttp.nonProxyHosts将涵盖两者。例如,Coldfusion 就是这种情况。在其他情况下,例如 Weblogic,您必须同时拥有 http 和 https 版本的两个参数。

对于 ColdFusion,他认为它不起作用的原因是 ColdFusion 正在为-Dhttp.nonProxyHosts参数添加引号:

-Dhttp.nonProxyHosts="my-server"
Run Code Online (Sandbox Code Playgroud)

如果你不使用引号,你应该很好:

-Dhttp.nonProxyHosts=my-server
Run Code Online (Sandbox Code Playgroud)

  • 没有“https.nonProxyHosts”这样的东西。[文档](https://docs.oracle.com/javase/8/docs/api/java/net/doc-files/net-properties.html) 说`HTTPS 协议处理程序将使用相同的 nonProxyHosts 属性作为HTTP 协议。` (13认同)
  • 显然,Weblogic 上有这样的东西,它不关心文档。 (3认同)