Domanda

Sto cercando di configurare mod_jk per inoltrare le richieste alla mia webapp in esecuzione su Tomcat. (Ho letto altro dove mod_proxy_ajp è la strada da percorrere ma voglio prima capire questo). Sono nuovo di Tomcat e Mod_jk.

Provo ad accedere - http://www.example.com/test/index .jsp

Ricevo un errore 400 nei miei registri apache dopo aver configurato mod_jk. La webapp funziona bene quando la collaudo direttamente su Tomcat. Nel file di registro mod_jk vedo che sta cercando di mappare A / index.jsp ma non riesce con un 400. Quindi vedo che il mod_jk viene invocato ma in qualche modo modjk non vede il webapp.

Qualsiasi aiuto è molto apprezzato

Sono su SuSe Linux 11 e sto eseguendo apache e tomcat sulla stessa scatola.

Il mio httpd.conf è un file monolitico. In esso ho aggiunto quanto segue -

<IfModule jk_module>
Alias /test/ "/srv/tomcat6/webapps/A"
JkWorkersFile   /usr/local/apache2/conf/workers.properties
JkShmFile       /usr/local/apache2/logs/mod_jk.shm
JkLogFile       /usr/local/apache2/logs/mod_jk.log
JkLogLevel      debug
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

JKMount        /test/ A1
JkMount     /test/* A1
JkOptions       +ForwardSSLCertChain
</IfModule>

Ho i seguenti contenuti in workers.properties -

#Define 1 real worker using ajp13
worker.list=A
#Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.ajp13.lbfactor=50
worker.ajp13.cachesize=10
worker.ajp13.cache_timeout=600
worker.ajp13.socket_keepalive=1
worker.ajp13.socket_timeout=300

Grazie,  - Vas

È stato utile?

Soluzione

Il tuo lavoratore si chiama A ma JkMount esegue il mapping su A1. Dovresti avere una voce come questa,

JkMount / test / * A

Ho usato sia mod_jk che mod_proxy_ajp. Sotto carico pesante, mod_jk funziona meglio perché la connessione mod_jk è più persistente. mod_proxy è davvero molto più facile da configurare.

EDIT: neanche la configurazione del lavoratore è corretta. Dovrebbe essere qualcosa del genere,

#Define 1 real worker using ajp13
worker.list=A
#Set properties for worker1 (ajp13)
worker.A.type=ajp13
worker.A.host=localhost
worker.A.port=8009
worker.A.lbfactor=50
worker.A.cachesize=10
worker.A.cache_timeout=600
worker.A.socket_keepalive=1
worker.A.socket_timeout=300

Altri suggerimenti

Hai caricato il modulo?

 LoadModule jk_module [path to it]

La direttiva sarà vera se è già stata caricata o compilata in credo.

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