需要帮助设置:Apache反向代理

时间:2011-11-27 00:01:54

标签: apache reverse-proxy virtual-hosts

我在设置虚拟主机文件时遇到了一些问题。 我想通过反向代理将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>

如果有人能找到任何我做错的事或有其他办法实现我的目标,我很乐意听到......

1 个答案:

答案 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

用于包含必要的模块