apache 反向代理:apache和iis共用80端口

时间:2022-09-03 19:15:31

之前一个朋友介绍了一个小网站的制作的活,价格挺便宜,我就图省事用asp做了

要给客户上线了才发现:客户是自己买的阿里云服务器,已经有php的站了.

这下操蛋了,之前没这么搞过


网上找半天iis和apache共用80端口的资料,各种试,总算搞定了:

首先呢,在httpd.conf里面,取消下面四行的注释(具体干嘛的,稍后查资料):
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so


然后Include conf/extra/httpd-vhosts.conf 去掉注释(使用apaphe的虚拟主机功能)


然后在httpd-vhosts.conf 里:


<VirtualHost *:80> 这里是默认站点配置
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "c:/www"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>


<VIRTUALHOST *:80> 这里是代理配置
    ProxyPreserveHost On
    ServerAdmin a@a.com
    ServerName www.a.com
    DefaultLanguage zh-CN
    AddDefaultCharset GB2312
    ProxyPass / http://www.b.cn:81/   域名已经解析,iis端口81

    ProxyPassReverse / http://www.b.cn:81/

</VIRTUALHOST>


<VIRTUALHOST *:80>
    ProxyPreserveHost On
    ServerAdmin a@a.com
    ServerName b.cn注意这里,是不加www的域名,如果没有,访问http://b.com就会报错

    DefaultLanguage zh-CN
    AddDefaultCharset GB2312
    ProxyPass /http://www.b.cn:81/  
    ProxyPassReverse / http://www.b.cn:81/
</VIRTUALHOST>