将Apache2替换为Varnish作为反向代理

时间:2013-09-26 20:51:31

标签: apache2 varnish varnish-vcl proxypass

我在替换Varnish ACL的Apache2反向代理规则时遇到了一些麻烦。

apache规则是:

<Location /MySite>
        ProxyPass       http://192.168.0.123/OtherSite
</Location>

我的清漆ACL:

if (req.url ~ "^/(?i)MySite") {
    set req.backend = myhost; # 192.168.0.123
    set bereq.url = regsub(req.url, "^/(?i)MySite", "/OtherSite");
    return (pipe);
}

这导致客户端的URL更改为“/ OtherSite”,我不希望这种情况发生。在这种情况下,当用户输入http://www.myhost.com/MySite时,响应会将用户的浏览器重定向到http://www.myhost.com/OtherSite。我希望这种“重定向”仅在varnish后端请求上发生,具有与Apache的ProxyPass相同的行为。

我怎样才能做到这一点?

谢谢

0 个答案:

没有答案