為什么共用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重寫的站點
2、當安裝完成url重寫時,會出現url重寫這個工具,選擇工具,名字也有可能是英文
3、打開工具,選在右側欄第一行添加規則,打開對話框,選擇空白規則
4、輸入名稱,隨意,但是盡量能表示出重寫目標的含義
5、匹配url,請求的url(字面意思):與模式匹配(推薦),與模式不匹配;使用(匹配使用的方式):正則表達式(推薦),通配符,完全匹配;
最容易忽視的地方是這里:
第七步,給出一個完成之后的例子如下