Flere webservere på 1 ip med mod_proxy

Hvis du nu kun har én offentlig ip men flere forskellige webservere du gerne vil have eksponeret så kan det godt blive svært, men der kommer mod_proxy heldigvis ind i billedet, det er også metoden du bruger hvis du f.eks. vil have en WordPress på domæne.dk/blog og dit Jsp basserede CRM system på domæne.dk/compiere.

Du skal sørge for at mod_proxy er aktiveret:

root@specialhosting:~# a2enmod proxy
Enabling module proxy.
Run '/etc/init.d/apache2 restart' to activate new configuration!
root@specialhosting:~# /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting .
root@specialhosting:~# a2enmod proxy_http
Considering dependency proxy for proxy_http:
Module proxy already enabled
Enabling module proxy_http.
Run '/etc/init.d/apache2 restart' to activate new configuration!

Derefter sætter jeg mine proxy-url’s op i din virtual-host config:

<Virtualhost *:80>
        ...
        ProxyPass /server1 http://10.0.0.2/
        ProxyPassReverse /server1 http://10.0.0.2/

        ProxyPass /server2 http://10.0.0.3/
        ProxyPassReverse /server2 http://10.0.0.3/
        ...
</Virtualhost>

Nu vil alle forspørgsler til /server2 og /server1 blive omskrevet og videresendt til de interne servere på ip adresserne 10.0.0.2 og 10.0.0.3, selvfølgelig uden at slutbrugeren ude på internettet bemærker noget 🙂

Dette kan evt. med success bruges som ekstra lag af sikkerhed ovenpå IIS maskiner, således at websitet kun er tilgængelig igennem proxyen, og Windows maskinen på indersiden ikke har adgang til Internettet.

Dette indlæg blev udgivet i Apache, Knowledge Base, Linux, Old Base, Uncategorized. Bogmærk permalinket.

Skriv et svar