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

Windows
Windows Vista系统局域网的FTP服务器的打造
Vista下jusched.exe进程与禁用
修改注册表通过自动更新安装Vista SP2 RC
Internet Explorer 8(IE8)简体中文版de 卸载
解析Windows Vista系统中的“远程桌面”用法
UC2008聊天室在Vista系统下的立体声混音设置方法
解决催化剂8.11驱动bug导致Vista x64双卡交火蓝屏问题
丢失的Windows Vista系统声音的找回
控制Windows Vista下窗口动画速度的办法
浅谈微软和苹果各自的字体平滑,反锯齿,和次像素渲染技术
完整版的Windows Vista系统开机加速全攻略
在Vista系统下.NET开发者应该考虑的五个安全问题
Vista系统下硬盘IDE模式安装后开启AHCI的方法
让Windows Vista的资源管理器加上标题的方法
Windows Vista系统下彻底屏蔽Office正版增值计划的提示
Windows下玩转Tab 键提升电脑操作效率
Windows中盘符的管理与应用
图解Windows Vista下java环境变量的配置
AMD Fusion游戏工具在Intel平台上的运行
自己动手轻松制作闪游浏览器个性酷靓皮肤

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


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