我的 apache2 virtualhost 'httpd.conf' 文件中有一个特定的子域,我想重定向到另一个本地 apache 服务器。我有一个将端口 80 上的所有请求重定向到原始服务器的路由器。
第二台服务器不在不同的全局 IP 地址上,而是在不同的本地 IP 地址上。
我有什么办法可以做到这一点,
谢谢
我的 apache2 virtualhost 'httpd.conf' 文件中有一个特定的子域,我想重定向到另一个本地 apache 服务器。我有一个将端口 80 上的所有请求重定向到原始服务器的路由器。
第二台服务器不在不同的全局 IP 地址上,而是在不同的本地 IP 地址上。
我有什么办法可以做到这一点,
谢谢
您可以使用 Apache 的代理功能来做到这一点。例如:
<VirtualHost *:80>
ServerName myhostname
<Location />
ProxyPass http://address-of-local-server/
ProxyPassReverse http://address-of-local-server/
</Location>
</VirtualHost>
这将导致 Apache 将匹配此 VirtualHost 定义的请求代理到另一台服务器并将结果返回给客户端。
这假定您已mod_proxy
启用。
您可以修改代理到由其 IP 地址标识的任何资源,例如
<VirtualHost *:80>
ServerName subdomain.domain.com
DocumentRoot /whatever
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location / >
ProxyPass http://192.168.0.x
ProxyPassReverse http://192.168.0.x
</Location>
#...
</VirtualHost>