iis和apache共用80端口,IIS代理转发apache

时间:2022-09-03 19:10:32

为什么共用80端口应该不用多说了,服务器上程序运行环境有很多套,都想抢用80端口,所以就有了共用80端口的解决方案。

网上很多的教程一般都是设置APACHE使用默认80端口,代理转发IIS的网站,IIS使用其他非80端口。

但是大家公认的是这样会降低效率,所以我反过来了。

我是IIS的网站使用默认80端口,APACHE使用非80端口,IIS代理转发APACHE的网站。

第一步,改造APACHE的默认端口80

找到conf目录下的httpd.conf文件,找到“Listen 80”和“ServerName localhost:80”

2个80代表默认的端口号,你改完你需要的,比如88

第二步,继续改造 /conf/extra/httpd-vhosts.conf 文件

<VirtualHost *:80>  

    ServerAdmin xxx@163.com     
    DocumentRoot "E:/www/xxx"   
    ServerName www.xxx.com     
    ServerAlias slg.com   
    ErrorLog "logs/slg-error.log"
    CustomLog "logs/slg-access.log" common
    RewriteEngine on
</VirtualHost>

这1个80也需要改成88

第三步,为了顺利被IIS转发,需要设置虚拟域名

在windows中,进入C:/Windows/System32/drivers/etc (在linux环境中应该是在/etc/hosts)

打开host文件,在最后面添加下面1行:

127.0.0.1       www.xxx.com

保存退出

第四步,前三步完成了APACHE的改造,设置非80端口以及虚拟域名(xxx:是演示用的域名,注意上下一致),这个时候可以重启APACHE了。

第五步,设置Routing Cache

先去IIS官网下载web平台安装工具安装它,然后安装Application Request Routing Cache。

打开IIS工具,选择上面安装的请求路由,选择 Server Proxy Settings,选择勾选Enable proxy,其他不用动,点击应用即可,完成请求路由的设置。

第六步,url重写设置

1、打开站点,选择需要url重写的站点

iis和apache共用80端口,IIS代理转发apache

2、当安装完成url重写时,会出现url重写这个工具,选择工具,名字也有可能是英文

iis和apache共用80端口,IIS代理转发apache

3、打开工具,选在右侧栏第一行添加规则,打开对话框,选择空白规则

iis和apache共用80端口,IIS代理转发apache

4、输入名称,随意,但是尽量能表示出重写目标的含义

iis和apache共用80端口,IIS代理转发apache

5、匹配url,请求的url(字面意思):与模式匹配(推荐),与模式不匹配;使用(匹配使用的方式):正则表达式(推荐),通配符,完全匹配;

iis和apache共用80端口,IIS代理转发apache

最容易忽视的地方是这里:


iis和apache共用80端口,IIS代理转发apache

 

第七步,给出一个完成之后的例子如下

 iis和apache共用80端口,IIS代理转发apache