Webserver – Meerdere interne servers benaderen vanaf één url (Apache)
Ik was al een tijdje op zoek om overige interne servers via 1 webadres te benaderen, ik kwam een site tegen dat gebruikt maakt van de Apache Proxy instellingen. En dat werkt perfect!, getest met Apache 2.4.x.
1) Laad de “proxy” modules, open het (hoofd) configuratiebestand van Apache [ApacheFolder]\conf\httpd.conf en haal de “#” weg bij:
1 2 |
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so |
2) Open het configuratiebestand voor Virtual Hosts: [ApacheFolder]\conf\extra\httpd-vhosts.conf, en voeg daar het volgende aan toe:
1 2 3 4 5 6 |
<VirtualHost *:80> ServerName server2.website.nl #ProxyPreserveHost on ProxyPass / http://ipvanserver2/ ProxyPassReverse / http://ipvanserver2/ </VirtualHost> |
server2.website.nl = Website url met allias
ipvanserver2 = het IP adres van je andere interne server, bijvoorbeeld 192.168.x.x
ProxyPreserveHost, is niet nodig!, ik kwam daarachter toen ik via andere poorten wou dooschakelen, daarom is deze als commentaar gemarkeerd!, zie hier.
Let op: zet deze instellingen ONDERAAN je virtual server instellingen, zo voorkom je dat als er een verkeerde alias opgegeven wordt (bijvoorbeeld dummy.website.nl) deze naar de eerste de beste proxy gaat!
3) Sla de bestanden op en herstart apache!, je kan nu je andere server benaderen via je eigen url!
Let op de server die deze proxy opvangt moet wel aan staan en Apache moet draaien!, anders werkt de proxy niet!
Bronnen:
integratedwebsystems.com