• 49阅读
  • 1回复

Apache设置反向代理泛目录(二级目录)的方法

楼层直达
设置反向代理有三个文件要用apache目录下 %lSjC%Z'd  
\conf\httpd.conf )H- y  
\conf\extra\httpd-proxy.conf .X{U\{c|a  
\conf\extra\httpd-vhosts.conf ]% I|C++0  
CL<m+dW%*  
1.设置httpd.conf lH%-#2]  
打开Apache24/conf文件夹下的httpd.conf设置文件,找到一下几行把前面的注释‘#’删除 4'`y5E  
LoadModule proxy_module modules/mod_proxy.so "UTAh6[3oD  
LoadModule proxy_connect_modulemodules/mod_proxy_connect.so Fle pM*  
LoadModule proxy_ftp_modulemodules/mod_proxy_ftp.so d@>1m:p  
LoadModuleproxy_http_modulemodules/mod_proxy_http.so Vv3:x1S  
 R]"3^k*  
(Ps:很多人都会注释LoadModuleproxy_balancer_modulemodules/mod_proxy_balancer.so,然而这个是做负载均衡用的一个功能,单纯做反向代理的话,不需要用这个,而且取消了这里的注释不进行相应的设置的话,会导致apache服务无法开启) _/cL"Wf  
然后找到 D 4\ * ,w  
Include conf/extra/httpd-vhosts.conf TqTz  
这一行前面的注释‘#’也删除,引入这个文件 8&UwnEk<  
HR$;QHl~F  
apache反向代理二级目录 5yQ\s[;o3  
]%Z7wF</  
<VirtualHost *:80> `nEe-w^9)I  
ServerAdmin webmaster@127.0.0.1    #主机名 (v1~p3H  
#DocumentRoot "d:/**/htdocs/lseventt.com" tzdh3\6F  
ServerName 127.0.0.1 C !6d`|  
ServerAlias 127.0.0.1 Kld#C51X f  
#ErrorLog "logs/lseventt.com-error.log" +z?SKc  
#CustomLog "logs/lseventt.com-access.log" common B dKD%CJ[  
ProxyPass /abc  http://127.0.0.1:8888/abc zE1=*zO`  
</VirtualHost> JFh_3r'  
以上代码是把lseventt.com的abc目录反向代理到 http://127.0.0.1:8888/abc |7%#z~rT  
R&9Q#n-  
上面讲的是 开启一个站点的二级目录反向代理,那么如何开启一个站点的二级泛目录反向代理呢? p@jwHlX  
>j_N6B!  
下面就给大家看一个例子 52#Ac;Y  
*PF=dx<8  
D) ;w)`  
`F4gal^ ^  
<VirtualHost *:80> eGj[%pk  
    ServerAdmin webmaster@127.0.0.1    #主机名 6uKS!\EY|  
    #DocumentRoot "d:/**/htdocs/lseventt.com" l{4rKqtX  
    ServerName 127.0.0.1 ^Rc*X'Iz(!  
    ServerAlias 127.0.0.1 se&Q\!&M  
    #ErrorLog "logs/lseventt.com-error.log" $#/f+kble  
    #CustomLog "logs/lseventt.com-access.log" common K| '`w.  
    ProxyPassMatch ^/abc(.*)$   http://127.0.0.1:8888/$1 j6DI$tV~  
    ProxyPassMatch ^/abc(.*)/$  http://127.0.0.1:8888/$1 2C"[0*.[N  
nD\H$5>5  
    ProxyPass /abc http://127.0.0.1:8888/abc vfloha p  
    ProxyPassReverse /abc http://127.0.0.1:8888/abc <Xl/U^B  
G*%:"qleT$  
    <Proxy *> rWNywxnT  
    Order deny,allow P9jPdls  
    Allow from all |VQmB/a  
    </Proxy> ]..7t|^b&  
</VirtualHost> MZ"|Jn  
以上代码的意思是把lseventt.com的abc开头的目录泛解析到http://127.0.0.1:8888/abc上面。
只看该作者 安逸沙发  发表于: 11-05
iis二级目录(泛目录)泛解析反向代理
适用于windows主机首先说一下,IIS6略古老,想做反向代理也基本没戏,所以我就用IIS7.5和IIS8.5说事吧!windows server2008 iis7 利用ApplicationRequest Routing实现二级目录反向代理。 ?T70C9  
先介绍下什么是反向代理?指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。我们可以通过反向代理实现负载平衡、突破防火墙限制等一些非常实用的Web服务器功能,目前反向代理不管在私有云还是公有云的虚拟机上用的很多很多。 rZ1${/6  
第一步:下载安装ARR(Application Request Routing), http://www.iis.net/downloads/microsoft/application-request-routing: 下载、安装过程很简单! D2~e@J(K  
第二步,简要设置ARR,配置应用程序请求路由缓存,安装完成后,IIS里会多出两个图标,分别是Application Request Routing和URL重写。2.0版本(也就是2008或者Win7系统)需要双击ApplicationRequest Routing以后,在右侧Server Proxy Settings里,将代理功能开启,而Win8以后的版本自己默认就开启了: N>7INK  
iis二级目录泛解析反向代理(包含泛目录) ~j mHzF kQ  
ge[f/"u  
iis二级目录泛解析反向代理(包含泛目录) $)mE"4FE  
1、设置proxy sn/^#Aa=N  
iis二级目录泛解析反向代理(包含泛目录) t*82^KDU  
c{6!}0Q4  
iis二级目录泛解析反向代理(包含泛目录) kp[+Iun?  
2、启动proxy 6YQ&+4   
iis二级目录泛解析反向代理(包含泛目录)  s6rdQI]  
 Jt.dR6,  
iis二级目录泛解析反向代理(包含泛目录) "44VvpQC  
应用即可 ATv.3cy  
第三步,设置反向代理: d90B15]gv  
ARR基本设置好了以后,需要进入一个IIS上搭建好的网站进行URL重写配置。 A}FEM[2  
方法一、修改或者创建网站根目录Web.config有则修改无则创建,内容如下栏目和域名为参数根据自己的需求修改即可 amK?LDf]  
<?xml version="1.0" encoding="UTF-8"?> >0=`3X|Y7  
<configuration> Q_euNoA0  
<system.webServer> n@mWB UM  
<defaultDocument> [2gK^o&t  
<files> -]~&Pi|  
<clear /> :se o0w]  
<add value="index.html" /> scCOiK)  
<add value="index.php" /> L@2T  
<add value="index.htm" /> "D'A7DA  
<add value="Default.htm" /> 6&S;Nrg9  
<add value="default.aspx" /> V]tuc s  
<add value="Default.asp" /> X#j-Ld{j  
<add value="iisstart.htm" /> r`pg`ChHv  
</files> \Y_2Z /  
</defaultDocument> NDEltG(  
<rewrite> w7cciD|  
<rules> $NC1>83  
<rule name="ReverseProxyInboundRule1" stopProcessing="true"> `9n%Dy<  
<match url="^bet(.*)" /> l&S2.sC  
<action type="Rewrite" url="http://118.188.188.88/{R:1}" /> 0W<:3+|n4  
<conditions> >j5) MF{"  
<add input="{HTTP_HOST}" pattern="www.lseventt.com" /> _]a8lr+_-  
</conditions> YQ9@Dk0R  
</rule> 19Xc0ez  
</rules> kNP.0  
</rewrite> j/`- x  
</system.webServer> }CnqJ@>C5  
</configuration> w DswK "T  
++n"` ]o,  
NWWag}  
保存上传到网站根目录即可! ?muI8b  
1ThONrxu  
方法二、图形化配置 8.FBgZh*  
1、选择你要设置反向代理的网站配置URL 重写 @ c,KK~{  
2、添加URL规则 c6FKpdn%  
3、选择反向代理即可 _Mq0QQ42  
4、输入你要反向代理的路径比如www.lseventt.com/links 跳转到118.188.188.88则输入后者如下图: vH/ z|<  
5、双击修改规则 g"vg {Q  
“模式”改为你要跳转的关键字(二级目录)bet名称 hT4 u;3xE  
在“条件”中条件输入哪里填写“{HTTP_HOST}”意思是请求的主机名,模式格式为:“^绑定的域名$”添加主机条件当主机名称为www.lseventt.com时才跳转 UQ6UZd37   
“重写URL”就不用管了默认生成的 u3)Oj7cX  
应用即可        总结: 4+%;eY.A  
上面的 ^(.*) 、 ^192.168.3.73:8080$ 、http://targetserver:8088/{R:1} `X[L62D  
表示:用192.168.3.73:8080替换http://targetserver:8088/ n!=%MgF'*p  
{R:1}就表示^(.*),意思是“http://targetserver:8088/”后面匹配任何字符 EV{kd.=f  
eg:访问192.168.3.73:8080/test/index.htm rvO7e cR"  
这个url就被重写成了http://targetserver:8088/test/index.htm
快速回复

限100 字节
安逸网提示:如果您在写长篇帖子又不马上发表,建议存为草稿
 
认证码:
上一个 下一个