Rick,
I also tried placing the Proxy configuration inside the Location block as well, 
but it didn't work.
 <VirtualHost *:85>
Servername public.example.com

ProxyRequests Off<Location "/ServicesWeb">
ProxyPass               “http://localhost:8080/ServicesWeb”ProxyPassReverse  http://localhost:8080/ServicesWeb”Substitute 
"s|http://localhost:8080/|http://public.example.com:85/|i"</Location>
</VirtualHost>

Please find the attached launch.jnlp file that gets generated that has the urls 
generated with the application server urls instead of apache urls. Meanwhile i 
will go through the FilterDeclare/FilterProver/FilterChain.
But tell about using ProxyPreserveHost is solving the issue, but having Proxy 
for third party applications are not working. Do you have any idea on that, why 
ProxyPreserveHost works if the apache and application server are in the box, 
but not for applications running in different box?


Please reply.
ThanksKiran
    On Thursday 25 January 2018, 11:09:27 AM GMT-5, Houser, Rick 
<[email protected]> wrote:  
 
 #yiv5204526202 #yiv5204526202 -- _filtered #yiv5204526202 
{font-family:Helvetica;panose-1:2 11 6 4 2 2 2 2 2 4;} _filtered #yiv5204526202 
{panose-1:2 4 5 3 5 4 6 3 2 4;} _filtered #yiv5204526202 
{font-family:Calibri;panose-1:2 15 5 2 2 2 4 3 2 4;}#yiv5204526202 
#yiv5204526202 p.yiv5204526202MsoNormal, #yiv5204526202 
li.yiv5204526202MsoNormal, #yiv5204526202 div.yiv5204526202MsoNormal 
{margin:0in;margin-bottom:.0001pt;font-size:11.0pt;}#yiv5204526202 a:link, 
#yiv5204526202 span.yiv5204526202MsoHyperlink 
{color:blue;text-decoration:underline;}#yiv5204526202 a:visited, #yiv5204526202 
span.yiv5204526202MsoHyperlinkFollowed 
{color:purple;text-decoration:underline;}#yiv5204526202 
p.yiv5204526202msonormal0, #yiv5204526202 li.yiv5204526202msonormal0, 
#yiv5204526202 div.yiv5204526202msonormal0 
{margin-right:0in;margin-left:0in;font-size:11.0pt;}#yiv5204526202 
p.yiv5204526202msonormal0, #yiv5204526202 li.yiv5204526202msonormal0, 
#yiv5204526202 div.yiv5204526202msonormal0 
{margin-right:0in;margin-left:0in;font-size:11.0pt;}#yiv5204526202 
p.yiv5204526202msonormal, #yiv5204526202 li.yiv5204526202msonormal, 
#yiv5204526202 div.yiv5204526202msonormal 
{margin-right:0in;margin-left:0in;font-size:11.0pt;}#yiv5204526202 
p.yiv5204526202msochpdefault, #yiv5204526202 li.yiv5204526202msochpdefault, 
#yiv5204526202 div.yiv5204526202msochpdefault 
{margin-right:0in;margin-left:0in;font-size:11.0pt;}#yiv5204526202 
p.yiv5204526202msonormal1, #yiv5204526202 li.yiv5204526202msonormal1, 
#yiv5204526202 div.yiv5204526202msonormal1 
{margin:0in;margin-bottom:.0001pt;font-size:11.0pt;}#yiv5204526202 
p.yiv5204526202msonormal01, #yiv5204526202 li.yiv5204526202msonormal01, 
#yiv5204526202 div.yiv5204526202msonormal01 
{margin-right:0in;margin-left:0in;font-size:11.0pt;}#yiv5204526202 
p.yiv5204526202msochpdefault1, #yiv5204526202 li.yiv5204526202msochpdefault1, 
#yiv5204526202 div.yiv5204526202msochpdefault1 
{margin-right:0in;margin-left:0in;font-size:10.0pt;}#yiv5204526202 
span.yiv5204526202ydp76fd50bdyiv6002100983ydp811169beskimlinks-unlinked 
{}#yiv5204526202 span.yiv5204526202msohyperlink {}#yiv5204526202 
span.yiv5204526202msohyperlinkfollowed {}#yiv5204526202 
span.yiv5204526202emailstyle23 {}#yiv5204526202 span.yiv5204526202msohyperlink1 
{color:#0563C1;text-decoration:underline;}#yiv5204526202 
span.yiv5204526202msohyperlinkfollowed1 
{color:#954F72;text-decoration:underline;}#yiv5204526202 
span.yiv5204526202emailstyle231 {color:windowtext;}#yiv5204526202 
span.yiv5204526202ydp811169beskimlinks-unlinked {}#yiv5204526202 
span.yiv5204526202EmailStyle32 {color:windowtext;}#yiv5204526202 
.yiv5204526202MsoChpDefault {font-size:10.0pt;} _filtered #yiv5204526202 
{margin:1.0in 1.0in 1.0in 1.0in;}#yiv5204526202 div.yiv5204526202WordSection1 
{}#yiv5204526202 
You’ll have to piece the non-JNLP stuff together yourself, but I looked at my 
config and the JNLP I changed does not have http:// in it.  With this module, 
you are doing a dumb string replace anywhere you see that pattern in a response 
body.  So, you should probably put that in a location block (to avoid 
processing all the unrelated content) , and then look at that particular JNLP 
file with wget or something, to make sure you are doing the replace on the 
correct string, much like if you were doing a perl/sed text substitution from a 
command line.  You might also need to use 
FilterDeclare/FilterProver/FilterChain to get your request to mod_substitute, 
or that might just be an optimization we did.
 
  
 
Good luck.
 
  
 
  
 
Rick Houser
 
Web Engineer
 
  
 
From: kiran kumar [mailto:[email protected]]
Sent: Thursday, January 25, 2018 10:36
To: Houser, Rick <[email protected]>; [email protected]
Subject: Re: RE: [users@httpd] Apache ReverseProxy for JavaWebStart Application.
 
  
 
EXTERNAL EMAIL


 
Thanks Rick for your reply.
 
  
 
I am trying to understand your reply.
 
  
 
The JNLP file that generates dynamically when we launch the client has some 
urls for the same java web start application, those urls should be the apache 
url's instead of the application server urls which is not happening when the 
JNLP file generated dyamically.
 
  
 
As i mentioned in my first email, if i use the ProxyPreserveHost ON, then the 
generated JNLP file has the apache host name urls, this way it works, but the 
other problem i have is, the third party applications that are reverse proxied 
in the same virtual host configuration are not working because of 
ProxyPreserveHost.
 
  
 
So, are you saying that we should be able to achieve this using mod_substitute 
module to tell JNLP to send traffic back to Apache on the fly without using the 
ProxyPreserveHost turned ON?
 
  
 
I have given a try as as shown below, but the generated JNLP is starting the 
application with the application server url. Please see the screen shot 
attached.
 
  
 
  
 
<VirtualHost *:85>
 
Servername public.example.com
ProxyRequests Off
 
ProxyPass                 “/ServicesWeb”      
“http://localhost:8080/ServicesWeb”
 
ProxyPassReverse “/ServicesWeb”      “http://localhost:8080/ServicesWeb”
 
Substitute 
"s|http://localhost:8080/ServicesWeb/|http://tenant4.fico.com:85/ServicesWeb/|i"
 
</VirtualHost>
 
  
 

 
  
 
  
 
Please help me on this, i am new comer to apache and i need your expertise to 
solve the issue.
 
  
 
  
 
Thanks
 
Kiran
 
  
 
On Thursday 25 January 2018, 9:23:42 AM GMT-5, Houser, Rick 
<[email protected]> wrote: 
 
  
 
  
 
It sounds like the client is never sending the traffic to Apache (per the 
JNLP), so you aren’t able to touch it until you first tell the client to send 
it there.  You can either serve that file statically with the changes already 
present, or use mod_substitute to modify it on the fly.
 
 
 
 
 
Rick Houser
 
Web Engineer
 
 
 
From: kiran kumar [mailto:[email protected]]
Sent: Wednesday, January 24, 2018 17:42
To: [email protected]
Subject: [users@httpd] Apache ReverseProxy for JavaWebStart Application.
 
 
 
EXTERNAL EMAIL
 
Hi,
 
 
 
I have java web start application running in my Jboss Application server.
 
 
 
I have configured the reverse proxy configuration for my JavaWeb start 
application as shown below.
 
<VirtualHost *:85>
 
Servername public.example.com
ProxyRequests Off
 
ProxyPass                 “/ServicesWeb”      
“http://localhost:8080/ServicesWeb”
ProxyPassReverse “/ServicesWeb”      “http://localhost:8080/ServicesWeb”
 
</VirtualHost>
 
 
 
 
 
I see that my web start application is not getting proxied and the JNLP file 
launched the application using my application server host name and port. But 
the other web applications which are running in the same Jboss application 
server JVM instance are getting proxied and the urls are always the apache urls.
 
 
 
How should i achieve to make it reverse proxied to the apache for my java web 
start application. ? I heard that there is a directive called ProxyPreserveHost 
to be turned ON will help the Java web start application to proxy, but there 
are issues with this where if there are any ReverseProxy configurations for 
third party applications in the same VirtualHost, those applications are not 
getting proxied and giving 404 errors. 
 
 
 
Please provide the details how i could achieve.
 
 
 
Thanks
 
Kiran
 
 
 
 
   

Attachment: launch.jnlp
Description: application/java-jnlp-file

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to