2009-03-02 3 views
37

Sto lavorando al mio primo sito Java. Sto eseguendo Apache Tomcat sulla porta 8080 e Apache HTTPD sulla porta 80. L'URL corrente a cui posso accedere è (ad esempio) 123.4.5.6:8080. Voglio rimuovere il numero di porta dall'URL prima di puntare il dominio sul nuovo IP.Come reindirizzare da Apache a Tomcat?

Al momento sto usando Apache solo per phpmyadmin, tuttavia ho intenzione di usarlo per gli script CGI e altre cose una volta che ho capito mod_jk ecc ... Quindi non voglio cambiare la porta di Tomcat a 80 e girare fuori da Apache.

Spero che abbia senso.

risposta

41

Il modo corretto di fare le cose è lasciare Apache a 80 e Tomcat a 8080 e usare un plug-in (preferibilmente mod_proxy) a proxy Tomcat da Apache. mod_proxy ti richiederebbe solo 10 minuti per la configurazione.

Questo how-to è molto semplice da seguire.

+0

io consiglierei anche questo - meglio non avere il vostro JVM in esecuzione come root se non hai qualche altro modo di permettere di legarsi alla porta 80. – Alnitak

+1

mod_jk consente di non eseguire come root e utilizzare ancora la porta 80 per servire le richieste tramite Apache. – Mike

+0

@kgiannakakis: preferisci questo a mod_jk? – cherouvim

15

Il modo usuale, come già accennato, è quello di utilizzare mod_jk da Apache HTTPD per inoltrare quel contenuto che si desidera venga elaborato da Tomcat.

C'è un Quick HowTo su tomcat.apache.org. È necessario effettuare quanto segue:

  • Copia mod_jk.so nella directory dei moduli appropriata per Apache HTTPD.
  • Creare un file di configurazione workers.properties
  • In Apache HTTPD di httpd.conf, aggiungere una sezione per configurare mod_jk.
  • Assicurarsi che Tomcat è configurato per accettare il protocollo mod_jk, che di solito è sulla porta 8009

Le linee in httpd.conf con JkMount:

JkMount /examples/* worker1 

ad Apache HTTPD che le richieste devono essere inoltrate a Tomcat.

2

Entrambe le risposte utili sopra sono buone, ma preferisco di gran lunga lo mod_proxy su mod_jk. Non c'è altra installazione da fare per mod_proxy, al contrario di mod_jk, e l'installazione è molto più semplice. mod_jk ti offre un maggiore controllo sulla sintonizzazione dettagliata dei parametri di Tomcat, ma se desideri semplicemente un semplice reindirizzamento da Apache a Tomcat, la strada da percorrere è mod_proxy.