Domanda

Ho sia Apache 2 e JBoss 4.2.3 sulla stessa macchina e vorrebbero entrambi per utilizzare la porta 80. Ci sono diversi modi che vedo gente che fa questo mod_jk, mod_proxy, ma non sono sicuro che uno è il migliore.

Non ho bisogno di alcun bilanciamento del carico, ma ho bisogno HTTPS.

È stato utile?

Soluzione

Non è possibile avere due applicazioni ascolto alla stessa porta TCP (80) allo stesso tempo. È possibile utilizzare mod_jk avere richieste HTTP sulla porta 80 instradato dal server Apache per il server JBoss. Questo è il metodo mi è più familiare con e preferisco. mod_proxy dovrebbe anche funzionare, ma trovo che il metodo un po 'più complicato.

https Configurazione di Apache è probabilmente meglio trattate come un argomento a parte. Ci sono problemi con l'acquisto di un certificato SSL, la creazione di un certificato auto-firmato, ecc.

Ci sono due passaggi per eseguire configurare mod_jk per instradare le richieste dal server Apache al server JBoss:

Configurazione del server web Apache per inoltrare alcune richieste al server JBoss.

La configurazione di Apache varierà a seconda della distribuzione di Apache che si sta utilizzando (finestre, RHEL, Debian, costruito dalla fonte, ecc), ma i concetti dovrebbe essere simile per qualsiasi installazione di Apache.

È necessario scaricare mod_jk per la piattaforma dal sito Web Tomcat:
http://tomcat.apache.org/download-connectors.cgi
Il vostro sistema operativo fornitore può fornire un binario per voi, in modo da controllare per primo. Si può anche compilare mod_jk te stesso, se si preferisce.

Copia il binario mod_jk (mod_jk.so per il sistema Linux / UNIX, non è sicuro su Windows) nella directory di moduli server Apache (questo dipende dalla distribuzione di Apache in uso).

Aggiungere la direttiva equivalente alla configurazione di Apache:

LoadModule jk\_module /usr/lib/apache2/modules/mod\_jk.so

Si dovrebbe aggiungere due file di configurazione nella directory di configurazione di Apache: mod_jk.conf e workers.properties. È necessario includere mod_jk.conf dal file di configurazione di Apache principale:

Include /etc/apache2/mod\_jk.conf

Il file workers.properties è incluso per mod_jk.conf con la direttiva JkWorkersFile.

impostazioni più dettagliate per mod_jk.conf può essere trovato alla pagina di documentazione di Tomcat:
http://tomcat.apache.org/connectors-doc/reference/apache.html

Le direttive importanti sono:
JkWorkersFile (specifica dove il file vive le workers.properties)
JkMount (punto per la mappatura di URI per lavoratore Tomcat montare)

Un esempio:

JkWorkersFile /etc/apache2/workers.properties<br>
JkMount  /examples/*  myworker<br>
JkMount  /examples    myworker

Queste direttive mappa gli esempi / e / examples / URI per il lavoratore myworker Tomcat.

Concettualmente si può pensare di un lavoratore a rappresentare un gatto o istanza di JBoss e il monte come un modo di mappare un URI ad un lavoratore. Questo modo di rappresentare le cose permette un server Apache per essere il front-end per diversi Tomcat o server JBoss. Questo può essere utile se si dispone di un solo indirizzo IP è possibile utilizzare, ma desidera eseguire diversi application server dietro un server Apache.

I file workers.properties descrive il gatto o il server JBoss (s) che il server Apache si collegherà a. voci importanti in questo file sono:

worker.list=myworker<br>
worker.tomcat.type=ajp13<br>
worker.tomcat.host=localhost<br>
worker.tomcat.port=8009

Ci sono altre proprietà di lavoro che si possono trovare nella pagina di documentazione di Tomcat per il file workers.properties:
http://tomcat.apache.org/connectors-doc/reference/workers.html

Configurare il server JBoss di accettare connessioni dal server Apache

Il server JBoss è configurato per accettare connessioni mod_jk sulla porta 8009 (la porta ajp di default), fuori dalla scatola, ma è bene sapere dove configurare questo nel caso in cui si desidera modificare nulla di tutto questo in futuro.

La configurazione è in parte basata Tomcat del server JBoss situato in $ {} JBOSS_SERVER_CONFIGURATION /deploy/jbossweb.sar/server.xml. Questo è per JBoss AS 5.1.0.GA, le versioni precedenti sono in una posizione simile. Il connettore mod_jk viene configurato nella sezione connettore per il protocollo AJP 1.3e si presenta come:

<Connector protocol="AJP/1.3" port="8009" address="${jboss.bind.address}"    redirectPort="8443" />

Il motivo più comune per modificare questa sezione è se si dispone di Tomcat multipla o server JBoss connessione a apache tramite il protocollo AJP, è possibile regolare il numero di porta che il connettore AJP sarà in ascolto sulla quindi non ci sono conflitti.

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