Due connettori in server.xml di Tomcat
-
26-10-2019 - |
Domanda
Ho due applicazioni web, che voglio essere in esecuzione sotto l'unico gatto esempio, ma su un diverso porte per collegare, per esempio prima guerra - sotto 8080, e la seconda - 8090. E 'possibile fare utilizzando solo due connettori nel server.xml?
Quindi, per il collegamento alla prima applicazione - userò indirizzo http: // localhost: 8080 / myFirstApp e per il secondo - http: // localhost: 8090 / mySecondApp . Come posso fare questo senza correre due Tomcat innstances sul localhost?
Soluzione
Bene, penso che si può dichiarare le due connettori con diversi porti e verrà eseguita correttamente. Ma non si può limitare l'accesso alle applicazioni tramite la configurazione. Che è - entrambe le applicazioni saranno accessibili su entrambe le porte. Se è necessario limitare tale, fare un Filter
che controlli e restituisce 404.
Altri suggerimenti
Non c'è nessun problema con l'esecuzione di due connettori.
Ma se si vuole avere ogni app accessibile sulla porta diversa e solo lì (non su entrambi i / tutte le porte), copia di servizio parte in conf / server.xml cambiare le porte ed i nomi in modo che non c'è conflitto.
Si dovrà specificare diverse webapps directory per entrambi i servizi e mettere ciascuno dei vostri webapps in uno diverso.
http://www.mulesoft.com/tomcat-connector
Ora supponiamo che vogliamo cambiare questa configurazione, in modo che invece di ricevere due risposte per ogni richiesta ricevuta uno dei due connettori, vogliamo ogni connettore di passare richieste dalla sua porta ad una sola applicazione web specifica. Per realizzare questo funzionalità, abbiamo semplicemente bisogno di riorganizzare la gerarchia degli elementi in modo che assomiglia a qualcosa di simile:
<Server>
<Service name="Catalina">
<Connector port="8443"/>
<Engine>
<Host name="yourhostname">
<Context path="/webapp1"/>
</Host>
</Engine>
</Service>
<Service name="Catalina8444">
<Connector port="8444"/>
<Engine>
<Host name="yourhostname">
<Context path="/webapp2"/>
</Host>
</Engine>
</Service>
</Server>