• 255阅读
  • 1回复

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

楼层直达
设置反向代理有三个文件要用apache目录下 \BdQ(rm  
\conf\httpd.conf Z2{G{]EV(  
\conf\extra\httpd-proxy.conf =(as{,j  
\conf\extra\httpd-vhosts.conf |("zW7g  
D]5cijO6  
1.设置httpd.conf .^FdO$"  
打开Apache24/conf文件夹下的httpd.conf设置文件,找到一下几行把前面的注释‘#’删除 sG k'G573  
LoadModule proxy_module modules/mod_proxy.so Ov~>* [  
LoadModule proxy_connect_modulemodules/mod_proxy_connect.so V%'+ ob6  
LoadModule proxy_ftp_modulemodules/mod_proxy_ftp.so ,wH]|`w  
LoadModuleproxy_http_modulemodules/mod_proxy_http.so LLW\1 cxi  
gK>aR ^*  
(Ps:很多人都会注释LoadModuleproxy_balancer_modulemodules/mod_proxy_balancer.so,然而这个是做负载均衡用的一个功能,单纯做反向代理的话,不需要用这个,而且取消了这里的注释不进行相应的设置的话,会导致apache服务无法开启) + Awo\;@,  
然后找到 A@#D_[~  
Include conf/extra/httpd-vhosts.conf S,2{^X  
这一行前面的注释‘#’也删除,引入这个文件 qHra9yuSh  
.l ufE  
apache反向代理二级目录 `l`)Cs;a  
dG*2-v^G  
<VirtualHost *:80> md`"zV  
ServerAdmin webmaster@127.0.0.1    #主机名 pv;ZR  
#DocumentRoot "d:/**/htdocs/lseventt.com" };s8xGW:k3  
ServerName 127.0.0.1 Q"=$.M~  
ServerAlias 127.0.0.1 ftwn<B  
#ErrorLog "logs/lseventt.com-error.log" >7I"_#x1:  
#CustomLog "logs/lseventt.com-access.log" common y?@(%PTp  
ProxyPass /abc  http://127.0.0.1:8888/abc nH7i)!cI~  
</VirtualHost> Fl0 :Z  
以上代码是把lseventt.com的abc目录反向代理到 http://127.0.0.1:8888/abc 2u?k;"]V  
QC^ #ns&  
上面讲的是 开启一个站点的二级目录反向代理,那么如何开启一个站点的二级泛目录反向代理呢? )7}f .  
#Z>EX?VS:  
下面就给大家看一个例子 ?A`8c R=)I  
c6_i~0W56  
~s4o1^6L  
;j^C35  
<VirtualHost *:80> ^7>k:|7-t  
    ServerAdmin webmaster@127.0.0.1    #主机名 D*o5fPvFO  
    #DocumentRoot "d:/**/htdocs/lseventt.com" 9E-]S'Z  
    ServerName 127.0.0.1 %6eQ;Rp*  
    ServerAlias 127.0.0.1 uA~T.b\  
    #ErrorLog "logs/lseventt.com-error.log" . \:{6_  
    #CustomLog "logs/lseventt.com-access.log" common jNu`umS  
    ProxyPassMatch ^/abc(.*)$   http://127.0.0.1:8888/$1 T>qI,BEY  
    ProxyPassMatch ^/abc(.*)/$  http://127.0.0.1:8888/$1 C^8n;i9  
oW\kJ>!  
    ProxyPass /abc http://127.0.0.1:8888/abc |];f?1  
    ProxyPassReverse /abc http://127.0.0.1:8888/abc @=G6fW:  
c|KN@)A  
    <Proxy *> )E>nr Z  
    Order deny,allow 5eJMu=UpR  
    Allow from all sm9/sX!  
    </Proxy> 3]cW08"c  
</VirtualHost> vn5O8sD  
以上代码的意思是把lseventt.com的abc开头的目录泛解析到http://127.0.0.1:8888/abc上面。
只看该作者 安逸沙发  发表于: 2018-11-05
iis二级目录(泛目录)泛解析反向代理
适用于windows主机首先说一下,IIS6略古老,想做反向代理也基本没戏,所以我就用IIS7.5和IIS8.5说事吧!windows server2008 iis7 利用ApplicationRequest Routing实现二级目录反向代理。 A}+r;Y8[h  
先介绍下什么是反向代理?指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。我们可以通过反向代理实现负载平衡、突破防火墙限制等一些非常实用的Web服务器功能,目前反向代理不管在私有云还是公有云的虚拟机上用的很多很多。 mTu9'/$(  
第一步:下载安装ARR(Application Request Routing), http://www.iis.net/downloads/microsoft/application-request-routing: 下载、安装过程很简单! &?6 ~v  
第二步,简要设置ARR,配置应用程序请求路由缓存,安装完成后,IIS里会多出两个图标,分别是Application Request Routing和URL重写。2.0版本(也就是2008或者Win7系统)需要双击ApplicationRequest Routing以后,在右侧Server Proxy Settings里,将代理功能开启,而Win8以后的版本自己默认就开启了: cnO4N UDv  
iis二级目录泛解析反向代理(包含泛目录) tg4&j$  
.jU0Hu{F4  
iis二级目录泛解析反向代理(包含泛目录) zT zG&B-  
1、设置proxy J*k=|+[  
iis二级目录泛解析反向代理(包含泛目录) &cejy>K  
9%veUvY  
iis二级目录泛解析反向代理(包含泛目录) J@-9{<  
2、启动proxy TW? MS em  
iis二级目录泛解析反向代理(包含泛目录) 2(xKE_|  
cM Kh+r  
iis二级目录泛解析反向代理(包含泛目录) e6a8ad  
应用即可 1@Gv`{v  
第三步,设置反向代理: x$4'a~E  
ARR基本设置好了以后,需要进入一个IIS上搭建好的网站进行URL重写配置。 l0)6[yXK  
方法一、修改或者创建网站根目录Web.config有则修改无则创建,内容如下栏目和域名为参数根据自己的需求修改即可 .v!e=i}.  
<?xml version="1.0" encoding="UTF-8"?> 3j#F'M)s{  
<configuration> :a`m9s 4  
<system.webServer> OW^7aw(N6  
<defaultDocument> c7 -j  
<files> s:{%1/  
<clear /> +/'jX?7x%  
<add value="index.html" /> 1:8: yFV  
<add value="index.php" /> ,GlK_-6>  
<add value="index.htm" /> z~al h?H  
<add value="Default.htm" /> QO%K`}Q}  
<add value="default.aspx" /> [z9i v~  
<add value="Default.asp" /> J^T66}r[f,  
<add value="iisstart.htm" /> Yv)/DsSyL  
</files> X"]ZV]7(]s  
</defaultDocument> bPEAG=l"-  
<rewrite> ]z,?{S  
<rules> G(- `FH  
<rule name="ReverseProxyInboundRule1" stopProcessing="true"> f]EHDcC3X  
<match url="^bet(.*)" /> z'm;H{xf  
<action type="Rewrite" url="http://118.188.188.88/{R:1}" /> b#F3,T__`Y  
<conditions> o7 kGZ  
<add input="{HTTP_HOST}" pattern="www.lseventt.com" />  : 2?du  
</conditions> \<5xf<{  
</rule> +mY(6|1  
</rules> \Tc$P#  
</rewrite> iZ{D_uxq  
</system.webServer> O_E[F E:+  
</configuration> H*Yy o ?  
@=$;^}JS|  
sV-9 xh)i  
保存上传到网站根目录即可! "2 Kh2[K  
WKN\* N<  
方法二、图形化配置 /@0wbA  
1、选择你要设置反向代理的网站配置URL 重写 I(C_}I>Wb  
2、添加URL规则 8NpQ"0X  
3、选择反向代理即可 8}4V$b`Z  
4、输入你要反向代理的路径比如www.lseventt.com/links 跳转到118.188.188.88则输入后者如下图: pZXva9bE  
5、双击修改规则 ^"l4   
“模式”改为你要跳转的关键字(二级目录)bet名称 |06G)r&  
在“条件”中条件输入哪里填写“{HTTP_HOST}”意思是请求的主机名,模式格式为:“^绑定的域名$”添加主机条件当主机名称为www.lseventt.com时才跳转 - v`;^X  
“重写URL”就不用管了默认生成的 _Nlx)YR  
应用即可        总结: 9^XT,2Wwf  
上面的 ^(.*) 、 ^192.168.3.73:8080$ 、http://targetserver:8088/{R:1} !RAyUfS  
表示:用192.168.3.73:8080替换http://targetserver:8088/ /&a[D 2  
{R:1}就表示^(.*),意思是“http://targetserver:8088/”后面匹配任何字符 .pK_j~}P  
eg:访问192.168.3.73:8080/test/index.htm }3ty2D#/:  
这个url就被重写成了http://targetserver:8088/test/index.htm
快速回复

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