我在设置虚拟主机文件时遇到了一些问题。 我想通过反向代理将vistors发送到正确的服务器。 我当前的设置给了我一个内部错误。
我只有一个公共IP,并希望在正确的服务器名称条件下将访问者代理到其中一个本地虚拟服务器。
NameVirtualHost *:80
<VirtualHost *:80>
ServerName sub.domain.com
ServerAdmin me@domain.com
ProxyPreserveHost On
ProxyPass / http://192.168.1.11:80
ProxyPassReverse / http://192.168.1.11:80
</VirtualHost>
<VirtualHost *:80>
ServerName otherdomain.com
ServerAdmin me@domain.com
ProxyPreserveHost On
ProxyPass / http://192.168.1.12:80
ProxyPassReverse / http://192.168.1.12:80
</VirtualHost>
如果有人能找到任何我做错的事或有其他办法实现我的目标,我很乐意听到......
答案 0 :(得分:6)
搞定了!使用了以下设置:
<VirtualHost *:80>
ServerName sub.domain.com
ServerAdmin me@domain.com
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.1.11/websvn/
ProxyPassReverse / http://192.168.1.11/websvn/
</VirtualHost>
/ websvn / part是正确包含css和其他文件的必要条件
在另一个加载的.conf文件中:
LoadModule proxy_connect_module /usr/lib/apache2/modules/mod_proxy_connect.so
LoadModule proxy_ftp_module /usr/lib/apache2/modules/mod_proxy_ftp.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
用于包含必要的模块