proxy & rewrite

来源:互联网 发布:枕下放红线多久知姻缘 编辑:程序博客网 时间:2024/05/21 14:46

关于正向代理和反向代理的区别,这里就不提了。

使用 ProxyRequests 指令即可激活正向代理。

使用 ProxyPass 指令即可激活反向代理(在 RewriteRule 中使用[P]标记也可以)。在 2.2.5 版本以后,引入了 ProxyPassMatch 指令,区别是支持正则。

另外,日志也很有意思。由于会发起另外一个请求,在 accesslog 中,会先记录这个另外的请求,然后才记录原始请求。即日志记录是一个入栈的过程,先进后出。

例如,配置是:

ProxyPassMatch ^/cookie.html$ http://localhost/test

访问 cookie.html 时,会发起对 test 目录下的同名文件的请求,并将其返回。此时,accesslog 中记录的顺序是:

127.0.0.1 - - [time] "GET /test/cookie.html HTTP/1.1" 304 -

originalIP - - [time] "GET cookie.html HTTP/1.1" 304 -

对用户而言,反向代理是透明的。但是 rewrite 不一样,用户能收到 302 跳转。


原创粉丝点击