I want to access TS at http://trackstudio.mydomain.com when TS is actually running on http://server1.mydomain.com:8080/TrackStudio
Apache running on gateway.mydomain.com is configured with a virtual host:
- Code: Select all
<VirtualHost *:80>
ServerName trackstudio.mydomain.com
ServerAlias trackstudio
RewriteEngine on
RewriteLog "/tmp/rewritelog"
RewriteLogLevel 5
RewriteRule ^/(.*) http://server1.mydomain.com:8080/TrackStudio/$1 [P]
</VirtualHost>
DNS entry for trackstudio.mydomain.com points to gateway.mydomain.com
The basics of the URL rewriting appear to be working in that I get the TS logon screen at http://trackstudio.mydomain.com but after completing the logon details I get the following stack trace (extract only).
- Code: Select all
Stack Trace:
javax.servlet.ServletException: org.apache.struts.chain.commands.InvalidPathException: No action config found for the specified url.
at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
at com.trackstudio.action.TSStrutsServlet.doGet(TSStrutsServlet.java:32)
and the URL in the browser address bar is:
- Code: Select all
http://trackstudio.mydomain.com/TrackStudio/LoginAction.do;jsessionid=5FD776C14D64AF476F1615AE9771FFE3
I note also that the logon screen is missing the TrackStudio logo and some formatting (assume couldn't download CSS). Browsing the rewrite logs shows attempts to fetch the images (URL with jsessionid=729DC59C75595B6DB4A6FE9E05882BFD).
I'm guessing that this is some issue with cookies or something similar related to rewriting the URL.
Has anyone successfully used an Apache Reverse Proxy / Gateway as a front end to TS in this way?
TIA
