Domanda

Sto usando Tomcat 5.5 e voglio fare quanto segue:

Se due applicazioni Web vengono distribuite (lasciarli essere foo e bar ) Voglio essere in grado di accedere a tutti e due con i relativi percorsi e gli alias.

localhost: 8080 / foo -> foo e foo.example.com -> foo

e, rispettivamente,

localhost: 8080 / bar -> bar e bar.example.com -> bar

Se io uso diversi host all'interno del motore e gli alias -come la documentazione dictates- poi gli URL alias funzionano bene, ma non i relativi quelle. Al fine di avere tutti e due lavorare correttamente ho bisogno di un ospite in più "localhost" e dichiaro ancora una volta gli stessi contesti. Ecco il mio server.xml

<Engine name="Catalina" defaultHost="localhost">
    <Host name="foo.example.com">
        <Context docBase="webapps/foo" path="" workDir="work/Catalina/foo/_"/>
        <Alias>foo.example.com</Alias>
    </Host>
    <Host name="bar.example.com">
        <Context docBase="webapps/bar" path="" workDir="work/Catalina/bar/_"/>
        <Alias>bar.example.com</Alias>
    </Host>
    <Host name="localhost" appBase="webapps" autoDeploy="false" >
        <Context path="foo" workDir="work/Catalina/foo/_" />
        <Context path="bar" workDir="work/Catalina/bar/_" />
    </Host>
</Engine

Anche se funziona in questo modo, sembra che Tomcat sta caricando ogni contesto due volte. C'è un altro modo per raggiungere questo?

È stato utile?

Soluzione

Si carica infatti le applicazioni due volte perché si è configurato in questo modo. Avreste bisogno di un'istanza apache httpd davanti a Tomcat di fare qualche magia URL Rewrite.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top