As you are already running Apache, the easiest way to do this would be to set it up as a reverse proxy in front of Tomcat.
First, make sure
mod_proxy is enabled by running:
- sudo a2enmod proxy
- sudo a2enmod proxy_http
- service apache2 restart
Then create a new virtual host in a file named
/etc/apache2/sites-available/tomcat.conf In it, you can configure it to point your domain to your Tomcat app:
ProxyPass / http://localhost:8080/Application_name/
ProxyPassReverse / http://localhost:8080/Application_name/
Note that the
ServerName directive is important. Make sure that the virtual host for what Apache is already serving on port 80 also has
ServerName set so that Apache can route the requests correctly.
Finally, enable the site and reload Apache:
- sudo a2ensite tomcat
- sudo service apache2 reload
Now visiting www.mysite.com should display the Tomcat application.
In this DigitalOcean article, we are going to see set up Apache on Ubuntu 13 and use it as a reverse-proxy to welcome incoming connections and redirect them to application server(s) running on the same network. For this purpose, we are going to use and work with the mod_proxy extension and several other related Apache modules.