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

Windows
Windows Server 2008关闭闲置状态的IDE通道
Windows Server 2008网络中禁止迅雷下载
Windows Server 2008病毒偷改账号的安全隐患
Windows Server 2008网上邻居打开慢的解决
Windows Server 2008 四项优化技巧
解决Windows Server 2008 回收站无法清空故障
部署RemoteApp实现应用程序的远程调用
Windows Server 2008 R2新增功能概览
Windows Server 2008 WDS 设置完全攻略
卷影复制 解决Windows Server 2008共享隐患
在Windows Server 2008中实现流量的监控和限制
Windows Server 2008的NPS策略应用
巧妙查看Windows Server 2008运行性能
利用命令行 提升Windows Server 2008管理效率
详述Windows Server 2008全面审核策略
配置Windows Server 2008防火墙让系统更安全
你所不知道的Windows7企业功能详解
Windows Server 2008服务器管理控制台解析
活用Windows Server 2008命令 解决网络疑难杂症
定制Windows 2008使它适合日常使用

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 52 ::
收藏到网摘: 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