前几天公司的VPS上要放个ASP网站,本觉得小事一桩,遂风风火火地在WAMP旁边又弄出来个IIS的快捷方式。一路过关斩将终于在IIS上建了个以域名为主机头的网站,端口固然是默认且大名鼎鼎的80,结果竟然是“(中止)”!web

我顿觉一阵天旋地转,说时迟那时快,最后关头桌子以迅雷不及掩耳之势稳稳地搀住了我(谢谢),咳咳。定了定神以后,我仔细提着腮帮子沉思了半日:这货究竟是硬邦邦的微软开发的,虽然说同是80端口,但我好歹用主机名把大家俩拉开了呀,何故仍是容不下Apache?又拉着额头思虑了半晌,终于皇天不负有心人,我果断双击桌面上的红黄绿蓝小圆球,不远万里来到了位于中国香港的Google.hk。在个人威逼利诱下,终于获得了解决问题的办法。apache
好,废话再也不多说,赶忙把这来之不易的答案给你们双手奉上。服务器
原来,还真是80端口冲突了。虽然在Apache或者IIS上能够创建多个80端口的网站(不一样域名),但能够简单滴理解为一个WEB服务器软件可使用一个端口处理多个网站,但多个WEB服务器软件不能共用一个端口处理多个网站,就好像一个司机能够开一辆车接多个乘客,但多个司机不能同时开一辆车接客(乘客)同样。因此,只能让IIS委屈一下,给你个8000端口吧,唉,谁让我这么偏袒开源软件呢。网站
问题又来了,我总不能让你们输入http://www.LsevenTT.com/来访问个人网站吧,因此必须还得解决一个问题:让你们直接输入域名就能够访问到这个ASP网站。只能从apache上着手了,由于80端口被他霸占着呢。固然,这个问题Google也告诉我了,用Apache的代理功能,简单地说就是当我访问apache的80端口的时候他能够把个人请求转发到另外一个网址,而后把结果再回传给我,对我来讲,我根本不知道apache回去找别人要东西,因此就不会给访问这个网站的用户形成影响了。具体操做以下:spa
修改Apache的配置文件httpd.conf开启两个模块代理
1 |
LoadModule proxy_module modules / mod_proxy.so |
2 |
LoadModule proxy_http_module modules / mod_proxy_http.so |
(在httpd-vhosts.conf中)新增一个指向IIS上的ASP网站的VirtualHost,切记:ProxyRequests Off,不然你的服务器将成为某些小朋友的免费代理服务器。这但是我对照apache日志摸索了半天才搞出来的,说来也巧,我刚开启代理就有人来跳了。日志
02 |
<IfModule mod_proxy.c> |
09 |
ServerName LsevenTT.com |
11 |
ProxyPass / http: / / localhost: 8000 / |
12 |
ProxyPassReverse / http: / / localhost: 8000 / |
OK,重启Apache,再次双击彩色小球输入ASP网站的域名,apache如约奉上了去找IIS借来的ASP网站。code
好了,太阳也快下山了,今天就晒到这里,再次感谢你们的捧场,谢谢,我们下期节目同一时间再见。
orm