In precedenza, avevo impostato correttamente Apache HTTP per inoltrare le richieste HTTP in arrivo sulla porta 80 alla mia istanza Tomcat in esecuzione sulla porta 8080. Tuttavia, ora sono in una situazione in cui devo essere in grado per eseguire il proxy delle richieste in arrivo sulla porta 80 su Tomcat @ 8080 o su un diverso processo @ 9000, a seconda dell'hostname. Di seguito è riportato un frammento del mio tentativo di installare il mio configurazione di Apache per gestire un caso del genere:Proxy HTTP Apache basato sul nome host
<VirtualHost *:80>
ServerName hostname1
ProxyPreserveHost On
ProxyPass/http://hostname1:8080/
ProxyPassReverse/http://hostname1:8080/
</VirtualHost>
<VirtualHost *:80>
ServerName hostname2
ProxyPreserveHost On
ProxyPass/http://hostname2:9000/
ProxyPassReverse/http://hostname2:9000/
</VirtualHost>
Ora quando si richiede da uno hostname1 o hostname2, ottengo un attimo 500 apparentemente a causa di mod_proxy non trovare eventuali regole di corrispondenza per delega la richiesta:
[Fri Feb 08 06:41:01 2013] [warn] proxy: No protocol handler was valid for the URL /. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.
Nota che Tomcat non riceve le richieste in arrivo, e quindi non di uscita registro
Per ragioni di sanità mentale, ho controllato che effettivamente possibile accedere a queste due risorse singolarmente alle rispettive porte, cioè posso accedere hostname1 usando hostname1: 8080 e hostname2 usando hostname2: 9000.
Sono mancate le cose qui per aiutarmi a configurarlo correttamente?
Inoltre, ci sono modi migliori per gestirlo in un modo forse più sano?
Grazie per qualsiasi aiuto!
è il suo "hostname" pienamente qualificato? Inoltre, cosa vedi nei tuoi file di registro? C'è qualcosa che entra nei tuoi registri di tomcat? –
Completamente qualificato come in "name.com" (senza "www"), sì. – jerluc
Aggiunti i registri degli errori Apache sopra – jerluc