JVM arguments for HTTPS nonProxyHosts
Asked Answered
M

1

16

So I have a fairly loaded env variable for _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\""

However I couldn't get it to ignore an internal server url when I tried it from Scala code using Apache HTTP client API.

https://username:[email protected]/foo/bar

Do I need to specify a different nonProxyHosts for HTTPS? The documentation didn't specify such a parameter. What am I missing? I am on a Mac.

Manolo answered 27/7, 2013 at 21:54 Comment(1)
According to docs.oracle.com/javase/7/docs/api/java/net/doc-files/… the http.nonProxyHosts proxy setting is the correct property for HTTPS. In the same document there is a SOCKS paragraph that reads: setting a SOCKS proxy server will result in all TCP connections to go through that proxy, unless other proxies are specified. Should my-co.com be accessed through my-socks-proxy.com or my-proxy.com?Lebkuchen
H
13

This answer is for the main question, and for whatever reason I originally thought this was ColdFusion specific.

It is rarely documented, but there is an https non proxy host argument you can use:

-Dhttps.nonProxyHosts=

A lot of documentation states that -Dhttp.nonProxyHosts will cover both. For example, that is the case in Coldfusion. In other cases, say Weblogic, you have to have both arguments, both the http and https versions.

For ColdFusion, he reason it doesn't work is that ColdFusion is adding quotes to the -Dhttp.nonProxyHosts argument:

-Dhttp.nonProxyHosts="my-server"

If you don't use quotes you should be good:

-Dhttp.nonProxyHosts=my-server
Heraclitus answered 11/4, 2016 at 20:5 Comment(3)
There is no such thing as https.nonProxyHosts. The documentation says The HTTPS protocol handler will use the same nonProxyHosts property as the HTTP protocol.Bouchard
Apparently, there is such thing on Weblogic, which does not care about the documentation.Syncopation
Oracle Java SE documents the use of the nonProxyHosts option so it is supported. In my case I had to use quotation marks around the option value. See docs.oracle.com/javase/8/docs/technotes/guides/net/proxies.htmlHesitant

© 2022 - 2024 — McMap. All rights reserved.