This week's book giveaway is in the Artificial Intelligence and Machine Learning forum.
We're giving away four copies of Zero to AI - A non-technical, hype-free guide to prospering in the AI era and have Nicolò Valigi and Gianluca Mauro on-line!
See this thread for details.
Win a copy of Zero to AI - A non-technical, hype-free guide to prospering in the AI era this week in the Artificial Intelligence and Machine Learning forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Paul Clapham
  • Bear Bibeault
  • Jeanne Boyarsky
Sheriffs:
  • Ron McLeod
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Jj Roberts
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • salvin francis
  • Scott Selikoff
  • fred rosenberger

Struts redirect behind reverse proxy

 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have an issue dealing with a struts application behind an apache proxy.

The url used through proxy is https://www.example.com/myapp/.
The proxy redirects to http://localmachine:8080/myapp/Logon.do.
So when the struts application redirects to new pages, the new pages fail to load.

Proxy config contains:
RewriteRule /myapp/(*.)  http://localmachine:8080/myapp/$1 [P,L]

The myapp/WEB-INF/web.xml contains:
<welcome-file-list>
   <welcom-file>index.jsp</welcome-file>
</welcom-file-list>

The myapp/WEB-INF/struts-config.xml contains:
<global-forwards>
   <forward name="Welcome" path="/Logon.do" >
</global-forwards>

The myapp/index.jsp contains:
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<logic:redirect forward="Welcome"/>

Could anyone tell me how to make this struts application work properly behind the reverse proxy?
 
Bartender
Posts: 9615
16
Mac OS X Linux Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What is your local web server?  If it is Tomcat, do you have your Connector(s) configured with a proxyName/proxyPort like this:



see here for more info
 
Michelle Griffin
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sorry, I did not get to test this sooner, the system was dismantled and rebuilt but now I am able to test your solution below.

I added the proxyName and proxyPort to the Tomcat conf/server.xml file but it seemed to have no affect.

Is there maybe another configuration setting I am missing?  Or another area I should try to debug?

Thank you again for the assistance.
 
Saloon Keeper
Posts: 22648
153
Android Eclipse IDE Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I don't think you're actually using an Apache reverse proxy in the strict sense. I think you're just rewriting URLs.

Apache has 2 reverse proxy modules that can work with Tomcat: mod_jk and mod_proxy. You didn't supply the directives that would have made either of them do the proxying.

A true reverse proxy does more than just rewrite URLs. In fact, the Apache proxies forward the proxy requests over special channels using special protocols, so instead of talking to Tomcat port 8080 or 8443, they talk to port 8081, which is the Coyote Connector for proxy traffic.

And, incidentally. using an application-supplied login instead of letting Tomcat handle login via J2EE security is a lot less secure.
 
Legend has it that if you rub the right tiny ad, a genie comes out.
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
reply
    Bookmark Topic Watch Topic
  • New Topic