1、ProxyPass:
语法:ProxyPass [path] !|url
它主要是用作URL前缀匹配,不能有正则表达式,它里面配置的Path实际上是一个虚拟的路径,在反向代理到后端的url后,path是不会带过去的,使用示例:
1)、ProxyPass /images/ !
这个示例表示,/images/的请求不被转发。
2)、ProxyPass /mirror/foo/ http://backend.example.com/
我们假设当前的服务地址是http://example.com/,如果我们做下面这样的请求:
http://example.com/mirror/foo/bar
那将被转成内部请求:
http://backend.example.com/bar
注:配置的时候,不需要被转发的请求,要配置在需要被转发的请求前面。
2、ProxyPassMatch:
语法:ProxyPassMatch [regex] !|url
这个实际上是url正则匹配,而不是简单的前缀匹配,匹配上的regex部分是会带到后端的url的,这个是与ProxyPass不同的。使用示例:
1、ProxyPassMatch ^/images !
这个示例表示对/images的请求,都不会被转发。
2、ProxyPassMatch ^(/.*\.gif)$ http://backend.example.com$1
这个示例表示对所有gif图片的请求,都被会转到后端,如此时请求http://example.com/foo/bar.gif,那内部将会转换为这样的请求http://backend.example.com/foo/bar.gif。
3、ProxyPassReverse
语法:ProxyPassReverse [路径] url
它一般和ProxyPass指令配合使用,此指令使Apache调整HTTP重定向应答中Location, Content-Location, URI头里的URL,这样可以避免在Apache作为反向代理使用时,。后端服务器的HTTP重定向造成的绕过反向代理的问题。参看下面的示例:
ProxyPass /example http://www.example.com/
ProxyPassReverse /example http://www.example.com/
ProxyPassReverse的作用就是反向代理,如果没有加这样的反向代理设置的情况下,访问http://www.test.com/example/a,如果www.example.com对请求进行了redirect至http://www.example.com/b,那么,客户端就会绕过反向代理,进而访问http://www.test.com/example/b。如果设置了反向代理,则会在转交HTTP重定向应答到客户端之前调整它为http://www.test.com/example/a/b,即是在原请求之后追加上了redirect的路径。
4、参考:
APACHE2.2中文文档:http://www.renren.it/my/api/apache_jinbuguo/Apache/ApacheMenu/mod/mod_proxy.html
本文出自:冯立彬的博客
ProxyPassMatch ^/app/files/public/orders/06_production/jobs/([a-zA-Z0-9\-]+)/Preview%20PNG/(V[0-9]+)/([a-zA-Z0-9_\-]+.png)$ http://192.168.2.42/app/files/public/orders/06_production/jobs/$1/Preview%20PNG/$2/$3
分享到:
相关推荐
Apache的ProxyPass指令详解 Apache的ProxyPass指令详解 Apache的ProxyPass指令详解
对apache与tomcat的集群配置进行了详细的描述。...晋级篇:正向与反向代理、访问控制、均衡策略之ProxyPass、均衡策略之ProxyPassReverse、代理struts2工程、PROXY_HTTP与PROXY_AJP的选择、集群SESSION策略
图形用户界面 AMID 休息接口的前端 在apache的httpd.conf中启动AMID并配置反向代理 埃斯: ProxyPass /mongo ProxyPassReverse /mongo
ProxyPassReverse / http://uambank.6677bank.com:8080/ *:80> ServerName bbs.6677bank.com ProxyPass / http://bbs.6677bank.com:8090/ ProxyPassReverse / http://bbs.6677bank.com:8090/ 3. 修改...
80 这个一定要 然后把主的ServerAdmin丢最下面 ///////////////////// NameVirtualHost *:80 <VirtualHost> ServerName abccccc.com ProxyPass / http://localhost:8088/ ProxyPassReverse / ...
实现方式:利用apache的 ProxyPass 可以实现对虚拟服务器的配置.(httpd.conf中) 如某公司的WWW服务器为 在httpd.conf中作如下设置: ProxyPass /sales ProxyPass /rd ProxyPass /head 如上设置生效了...
purls.py 个人网址缩短器。 今天,我们可以在其中使用bit.ly或goo.gl或... ProxyPass /u/ http://localhost:8880/ ProxyPassReverse /u/ http://localhost:8880/ purls.py的最简单调用仅要求传递缩短的URL的域前缀。
客户端使用proxypass(8000端口)与服务器进行通信,并且proxypass的默认URL为/ front / api,可以使用client / src / setupProxy进行更改。 服务器会话基于Redis。 您还可以使用docker-compose播放服务器。 客户端...
koa-proxy-pass 轻巧,无依赖性的koajs代理中间件,类似于nginx的proxy_pass。 安装 $ npm install @junyiz/koa-proxy-pass -S 用法 当您请求,它将获取并返回。...const proxyPass = require ( './koa
Apache在使用反向代理模式配置负载均衡时需要注意ProxyPass指令的顺序,代码片段如下,红色的代码部分不能放到蓝色的代码上方,不然通过apache访问时会出现请求转发失败的问题。
目录 1、准备两个tomcat和一个nginx ...2、反向代理proxy_pass 2.1、反向代理 2.2、反向代理-使用upstream 2.3、反向代理-负载均衡-轮循模式 2.4、反向代理-负载均衡-权重模式 2.4、反向代理-负载均衡-ip_hash方式 ...
peoxy balancer 配置 ProxyPass /11serv balancer://saleserv-cluster/ nofailover=On
它旨在与DNS服务(例如领事)一起工作 地位 第一个实现已准备好进行测试。 它可以为至少更简单的用例做好准备。 特征 多个解析器 自定义解析器端口 SRV和A记录缓存 HTTP代理 代理选择策略 循环赛 随机的 IP哈希 ...
80<VirtualHost> ProxyPreserveHost On Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Methods' '*' ProxyPass /sonar http://localhost:9000/sonar ProxyPassReverse /sonar ...
爬虫python入门 个获取知乎用户主页信息的多线程Python爬虫程序。 简介: ... * 使用Python内置的Thread多线程和IP代理提升爬取速度,并绕过...proxyPass = "" ``` (笔者使用一个IP代理隧道,若需要使用普通IP代理,
ProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=On ProxyPassReverse / balancer://cluster/ 其中的域名和路径根据你自己情况设置 然后再设置TOMCAT虚拟主机 2 配置 tomcat 2.1. 配置 ...
如果使用Apache和mod-proxy,则应将以下行添加到proxy.conf中: ProxyPass / tilt / 重试= 0 TILT以独立形式运行在TCP端口8082上,因此应该没有其他在该端口上侦听的应用程序。 作为Tomcat中的Web应用程序,它可以...
在此有必要对proxyPass的参数做些说明 “/jwchat/http-bind/”:jwchat就通过访问http://域名/jwchat/http-bind/地址去和openfire通讯,apache接到请求后就会重新定向到http://blzc.com:7070/http-bind/ ...
也就是要为 /vict_service 这个请求路径匹配一个实际可用的路径,既然提示ProxyPass命令无效,那么肯定是某个地方的设置问题。 解决的方法就在httpd这个配置文件里,找到以下两条: #LoadModule proxy_module ...