PDA

Visualizza Versione Completa : Reindirizzamento porta Apache http server



Picard
25-11-16, 10:19
Un nostro applicativo è pubblicato su web all'indirizzo ip di esempio 00.00.00.00:66/Nome/

Sulla porta 80 c'è l'applicativo installato da un altro fornitore per i centralini. In pratica se nel browser scrivo 00.00.00.00 mi fa un redirect alla gestione del centralino.

Su un dominio di terzo livello mioapp.cliente.com è stato impostato l'IP 00.00.00.00 ma ovviamente segue la regola del redirect del centralino.

Avendo montato Apache http server come faccio a dirgli di reinstradare le connessioni fatte a mioapp.cliente.com sulla porta 66 anziché sulla 80?

Se scrivo mioapp.cliente.com:66 /Nome/ funziona, ma non posso specificare certo la porta...

Ho configurato il file vhosts e abilitato in httpd.conf ma se vi scrivo evidentemente non ha funzionato :chebotta:

Idee?

meL
25-11-16, 20:40
Premetto che apache cerco di usarlo il meno possibile quindi magari non è del tutto oro ciò che scrivo :bua:

Comunque per fare quello che vuoi, se ho capito bene, devi usare il server Apache come Reverse Proxy (un tutorial passo passo lo puoi trovare qui: https://www.digitalocean.com/community/tutorials/how-to-use-apache-http-server-as-reverse-proxy-using-mod_proxy-extension ).

Devi creare 2 sezioni vhost con la direttiva ServerName impostata in modo differente in modo da distinguere i due diversi tipi di richiesta.

Per il centralino potrebbe essere:


<VirtualHost *:80>
ServerName 00.00.00.00

ServerAlias cliente.com

ServerAlias www.cliente.com (http://www.cliente.com)



# .... altre direttive

</VirtualHost>



Per la tua applicazione:


<VirtualHost *:80>
ServerName mioapp.cliente.com (http://www.cliente.com/)




# .... altre direttive se servono

ProxyPass / http://00.00.00.00:66/
ProxyPassReverse / http://00.00.00.00:66/

</VirtualHost>


Come vedi ci sono anche le direttive ProxyPass e ProxyPassReverse che permettono di redirigere la richiesta al tuo applicativo.
Per fare ciò devi aver attivato sulla macchina il modulo di Apache mod_proxy https://httpd.apache.org/docs/current/mod/mod_proxy.html