通过配置Apache反向代理实现外网域名映射至内网服务器
假设你拥有一个公网IP,又拥有多个公网域名映射到这个IP,例如:
www.host1.com -> 66.66.66.66
www.host2.com -> 66.66.66.66
?
现在你已经有一台Apache服务器在响应这个IP的HTTP请求了,也就是说对于两个域名的访问都会被这台服务器所响应。并且这台服务器同时也和内网相连。
如果你希望把其中一个域名的请求转发到内网中一台服务器上。例如:
www.host1.com -> 主服务器(公网可见)
www.host2.com -> 内网服务器(内网IP:192.168.1.102)
?
即可在httpd.conf中通过如下的配置来实现之~~
?
ServerName your.server.nameNameVirtualHost 66.66.66.66Listen 80<IfModule mod_proxy.c>ProxyRequests off<Proxy *> Order deny,allow Allow from all</Proxy><VirtualHost 66.66.66.66> ServerName www.host1.com ProxyPass / http://127.0.0.1/ ProxyPassReverse / http://127.0.0.1/</VirtualHost><VirtualHost 66.66.66.66> ServerName www.host2.com ProxyPass / http://192.168.1.102/ ProxyPassReverse / http://192.168.1.102/</VirtualHost></IfModule>