We know using proper logging library instead of System.out is important. But when there are a legacy application that still using the System.out and System.err, it will be good to be able to pipe it into file for troubleshooting
The solution is set the swallowOutput=”true” in Tomcat context of your webapp. Then this will pipe the stdout and stderr into the logger configured in the same context.
mod_proxy_ajp is an Apache module which can be used to forward a client HTTP request to an internal Tomcat application server using the AJP protocol. In this example I have used JSPWki as the example application running on a Windows server with Apache2.2 and Tomcat 5.5
Advantages of mod_proxy_ajp rather:
- You can gain a lot of flexibility (lot of the apache modules/features can be used especially “name-based virtual hosting”)
- Practical for those who need to support Java applications along with PHP / Perl … (only one apache server is needed)
- Certificates management is easier in apache configuration (this argument is a lot subjective)
- It’s not Tomcat’s main objective to serve http static resources (not optimized for that)
- Load balancing/cluster management is easier with an apache frontend
We just have to create the AJP connector in the
conf/server.xml file like that:
<Connector port="8009" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
This line will enable AJP connections to the 8009 port of your tomcat server (localhost for example).
One way (useful if this apache is a global front end) is to create a virtual host for this application.
ProxyPassReverseare classic reverse proxy directives used to forward the stream to another location.
ajp://…is the AJP connector location (your tomcat’s server host/port)
# JSP Wiki DNS
DocumentRoot “D:/Tomcat 5.5/webapps/JSPWiki/”
Allow from all
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/
The following entries were made in server.xml on the Tomcat App Server :
<Host name=”wiki.example.com” debug=”0″
<Context path= “” docBase=”D:/Tomcat 5.5/webapps/JSPWiki” debug=”1″/>
directory=”logs” prefix=”home_access_log.” suffix=”.txt”
Under JSPWiki/WEB-INF/jspwiki.properties the Base URL was modified as follows :