cekil
cekil

Reputation: 56

how to configure Embedded Tomcat virtual host for Spring Boot Application?

i have a multiple domains on my centos vps (domains running on apache http server via virtual host configurations). and also same vps, i want to add my new domain but that domain will route my spring boot application (application is a jar file also inside embedded tomcat ). i couldn't find any configuration for embedded tomcat specific domains and ports.

standalone Tomcat i can make configuration via server.xml file like this image

also this short tutorial shows configuration for stadalone tomcat Tomcat Virtual Host Configuration

But how can i do that configuration for embedded Tomcat ? Any suggestion ?

Upvotes: 3

Views: 7174

Answers (2)

BendaThierry.com
BendaThierry.com

Reputation: 2110

It depends. 2 ways to deploy your project.jar as you want to :

First way : You can use the "apache web server" and his own "mod_proxy" in order to serve as many Spring webapps you want to, each on a specific port configured with "php-fpm" and with a proxy defined to route requests from/to your namebased VirtualHost configuration.

Nowadays, with Spring Boot 2.5, all you have to do is to set the property server.port in your application.properties file, and use it accordingly with mod_proxy directives. If you are using profile, you can either set one port to dev or prod or test or whatever properties file you need.

Another way to proceed : you can use the apache web server "mod_jk" bridge module to configure multiple load-balancers for your Virtualhosts too.

Choose your path, young Jedi ;)

This response is certainly not for the OP, 7 years later, but for other people whom are using any web search engine like Google. They will come here and see "something is impossible". It is not true.

Upvotes: 0

luboskrnac
luboskrnac

Reputation: 24561

With Spring Boot embedded Tomcat, you are hosting only one application per servlet container. So I don't believe that Tomcat's concept of Virtual Hosts make sense at all.

If you have to host your app on shared Tomcat instance, just build WAR without embedded container.

Upvotes: 2

Related Questions