当前位置: 首页 > 图文教程 > 操作系统 > Windows > 如何让IIS与Apache共用80端口方法

Windows
Vista SP2更新和安装常见问题解答
在Vista、Windows7下玩英雄无敌3绿色版
在Vista、Win7下联网玩QQ对战平台、浩方、帝国时代2
当商用计算机遇到必须重新启动才能生效的更新
windows 7 运行命令
Vista/Win 7安装程序冲突问题的解决方法
Vista 修改注册表全面禁用控制面板
桌面 开始菜单丢失的解决方法
WinXP 安全设置 操作系统的技巧
Win7 虚拟内存 正确设置方法
注册表文件的默认打开方式修改方法
Windows7 再提速 winsxs文件夹优化
在Windows7上配置管理IIS日志记录
格式化与快速格式化有什么区别分析(快速格式化好)
教你全方面消除Win2003的安全隐患
细说Win2000的系统安全防范对策
Windows Server 2008 企业版 激活方法
Win2008系统和XP系统共同使用相同的缓存
Vista SP2搜索效率2则提升技巧
System Idle Process 认识与分析

Windows 中的 如何让IIS与Apache共用80端口方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 153 ::
收藏到网摘: n/a

为调试程序,本机安装iis与apache,无法同时使用80端口,现给出解决方法
  方法一: 

  IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址 
  c:\Inetpub\Adminscripts 
  cscript adsutil.vbs set w3svc/disablesocketpooling true 
  该命令反馈如下disablesocketpooling : (BOOLEAN) True 
  重启IIS 
  Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/disablesocketpooling true 
  由于 DisableSocketPooling 在 IIS 6.0 元数据库架构 (MBSchema.xml) 中被定义为有效属性,所以,您仍然可以使用 Adsutil.vbs 设置该属性,但这种设置不起作用。IIS 6.0 中的功能是新增的核心级别驱动程序 HTTP.sys 的一部分。要配置 HTTP.sys,您必须使用 Httpcfg.exe 

  方法二: 

  IIS6,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址 
  到2003的CD下的 support/tools/Support.cab。解压出httpcfg.exe文件,COPY到windows/system32/目录下,用法自己看帮助 

  命令行 

  绑定到某IP: httpcfg set iplisten -i 192.168.0.1 
  即命令使用IIS的只****指定的IP及端口 
  查看绑定: httpcfg query iplisten 
  删除绑定: httpcfg delete iplisten -i 192.168.0.1 

  命令行 
  net stop Apache2 
  net stop iisadmin /y 
  net START Apache2 
  net START w3svc 

  保证iis下的ip设置为全局默认,Apache中httpconf设置listen 192.168.0.2:80,就应该可以两个服务同时运行,相互不冲突了。 
  IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2 

  方法三: 

  网上常用的单IP共用80端口方法,不过不推荐,只是使用Apache的代理,速度有影响将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理。 

  在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 

  然后建立一个虚拟主机,将该域名的所有访问转向81端口。 

  ServerName iloves.vicp.net 
  ProxyPass / http://localhost:81/ 
  ProxyPassReverse / http://localhost:81/ 

  这样,对外就可以只需要一个端口,即可同时使用apache和IIS的功能了 

  类推,使用第二种方法,你可以在IIS上配置PHP4,Apache2中配置PHP5,只需要IIS中安装PHP4,把php.ini复制到\windows目录即可,这个就不用说了吧,Apache2中,只要把PHP5的php.ini放在PHP5安装目录里面就行了 

  配置Apache以支持PHP5: 

  LoadModule php5_module "D:/PHPServer/PHP5/php5apache2.dll" 
  AddType application/x-httpd-php .php 
  DirectoryIndex index.html index.php 
  PHPIniDir "D:/PHPServer/PHP5" 

  其中最重要的一条就是 PHPIniDir,用来指明php.ini文件所在位置,即PHP5的安装目录,注意所有目录的应该改为D:/PHPServer/PHP5这种格式,而非D:\PHPServer\PHP5,IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2