By: Emiley J Emailed: 1747 times Printed: 2432 times
When you install Tomcat in your server, by default it uses port 8080. Typically in a linux system, you can install apache2 or httpd as a web server that handles the default port 80 and then uses mod_proxy to send requests to Tomcat at port 8080 for sites hosted in Tomcat.
httpd (or apache2) are great for hosting multiple websites (multiple domains) in a single server. In this example, we will install, httpd in port 80 and Tomcat7 in port 8080 and then configure both of them to handle requests seamlessly.
Install and configure httpd
yum install httpdYou could ofcourse use apt-get instead of yum depending on your platform
Look for the following modules and enable them if they are not already enabled
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
Then uncomment, the following line
Uncomment the following lines at the bottom and change it to point to your default domain.
<VirtualHost *:80> ServerAdmin email@example.com DocumentRoot /var/www/html ServerName www.yourdefaultdomain.com ErrorLog logs/default-error_log CustomLog logs/default-access_log common </VirtualHost>
Save and close the file by pressing 'Esc' and the typing :wq! and Enter.
service httpd start
Intall and configure tomcat7
yum install tomcat7-webapps tomcat7-docs-webapp tomcat7-admin-webapps
- under /etc/httpd/conf.d create a file named mytomcatapp.conf and copy the below code
<VirtualHost *:80> ServerName www.myanotherdomain.com ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ ProxyRequests Off # Local reverse proxy authorization override # Most unix distribution deny proxy by default # (ie /etc/apache2/mods-enabled/proxy.conf in Ubuntu) <Proxy http://localhost:8080/*> Order deny,allow Allow from all </Proxy> </VirtualHost>
You have now installed both httpd and tomcat7 and configured them. You now have to start/restart both services
service httpd restart
service tomcat7 restart
Now when you goto your www.yourdefaultdomain.com in your browser, the request is direclty handled by httpd service and the index file from your /var/www/html folder will be returned to the browser.
If you goto www.myanotherdomain.com in your browser, the request will be forwarded by httpd service to the tomcat7 internally and your tomcat application will serve the pages.
The domains www.myanotherdomain.com and www.yourdefaultdomain.com are used for illustration purposes only. You have to use your own valid domains, and the DNS A records have to be created to point to the IP address of your server
Be the first one to add a comment
Most Viewed Articles (in Java )
Most Emailed Articles (in Java)