两个IP实现IIS和Apache公用80端口的设置方法
程序员文章站
2022-06-13 18:50:06
1. 打开命令提示符并确保您位于 x:\inetpub\adminscripts 文件夹(其中 x 是 iis 安装驱动器)中。为此,请在命令提示符下键入以下命令行: x:...
1. 打开命令提示符并确保您位于 x:\inetpub\adminscripts 文件夹(其中 x 是 iis 安装驱动器)中。为此,请在命令提示符下键入以下命令行:
x: cd \inetpub\adminscripts
2. 打开 adminscripts 文件夹后,请在命令提示符下键入以下行:
cscript adsutil.vbs set w3svc/disablesocketpooling true
3. 该命令反馈如下:
disablesocketpooling :(boolean) true
4. 停止 iis admin 服务,然后再启动它。
5. 重新启动 www 服务。珖氍舶夦鷏罾.{m?c鹠谠n{n簑傷钅洚{o镜汽铼纛{p?7??w柬?颪缗#镗q?j\r蘗畖s?宵髗9哕s蠯u羰i7}
好了,接下来设置iis要监听的ip地址。到2003的cd下的 support/tools/support.cab。解压出httpcfg.exe文件,copy到
windows/system32/目录下,
我的资源中提供下载
用法自己看帮助
命令行:
绑定到某ip: httpcfg set iplisten -i 192.168.1.1 即命令使用iis的只监听指定的ip及端口
查看绑定: httpcfg query iplisten
删除绑定: httpcfg delete iplisten -i 192.168.1.1
iis部分到此就设置好了,接下来设置apache监听ip和端口
listen 192.168.1.2:80
server 192.168.1.2:80
虚拟主机设置相应的ip和端口
好了接下来停止iis,重启apache
再重新启动服务器 启动iis 设置iis的端口80 ip地址为全部未分配即可
网上的另外一篇文章:
在windows 2003 server 中同时安装apache和iis,两者只能正常启动一个,即apache和iis有冲突,原因在于iis在默认的情况下会占用所有ip的80端口,当启动了iis后,再启动apache时,会出现一个错误提示框,提示内容为:"the requested operation has failed!" ,即“请求的操作已经失败”;若先启动apache再启动iis,系统提示“另一个程序正在使用此文件,进程无法访问”,微软的解决方案是:倘若 apache和iis要共存,且都需要使用80端口的话,需要网卡里绑多一个ip,具体做法如下,供网友参考。
*若apache和iis要共存,且都需要使用80端口,但只有一个ip的话,要使什么apache proxy,即apache代理,与本文方法不相同,请加以区分。
下面以两个ip分别设置两个环境为例说明,已知条件:218.87.96.160绑定了www.jb51.net域名,是一个php的站点,需要apache环境;218.87.96.161绑定了www.yuanma51.com域名,是个asp站点,需要iis环境。
一、apache改成监听一个ip的端口。
在httpd.cfg 文件里。有 #listen 12.34.56.78:80
写成如:listen 218.87.96.160:80
二、下载微软 support tools工具里的 httpcfg.exe 程序
下载地址:
并复制到 c:\windows\system32 目录下。
三、iis改成监听的指定ip (用httpcfg.exe程序来指定)
httpcfg.exe是用来指定iis的只监听指定的ip及端口
添加绑定:httpcfg set iplisten -i 218.87.96.161
查看绑定:httpcfg query iplisten
删除绑定:httpcfg delete iplisten -i 218.87.96.161
在本例中运行: httpcfg set iplisten -i 218.87.96.161 即可使iis只占用 218.87.96.161 ip地址 (若是要监听多个ip,分别指定几条就行了。)
四、重新启动服务器
查看两个web环境是否正常。用 netstat -an | find ":80" 命令就可以查看所有的80端口,最后测试两个ip的网站是否正常。
x: cd \inetpub\adminscripts
2. 打开 adminscripts 文件夹后,请在命令提示符下键入以下行:
cscript adsutil.vbs set w3svc/disablesocketpooling true
3. 该命令反馈如下:
disablesocketpooling :(boolean) true
4. 停止 iis admin 服务,然后再启动它。
5. 重新启动 www 服务。珖氍舶夦鷏罾.{m?c鹠谠n{n簑傷钅洚{o镜汽铼纛{p?7??w柬?颪缗#镗q?j\r蘗畖s?宵髗9哕s蠯u羰i7}
好了,接下来设置iis要监听的ip地址。到2003的cd下的 support/tools/support.cab。解压出httpcfg.exe文件,copy到
windows/system32/目录下,
我的资源中提供下载
用法自己看帮助
命令行:
绑定到某ip: httpcfg set iplisten -i 192.168.1.1 即命令使用iis的只监听指定的ip及端口
查看绑定: httpcfg query iplisten
删除绑定: httpcfg delete iplisten -i 192.168.1.1
iis部分到此就设置好了,接下来设置apache监听ip和端口
listen 192.168.1.2:80
server 192.168.1.2:80
虚拟主机设置相应的ip和端口
好了接下来停止iis,重启apache
再重新启动服务器 启动iis 设置iis的端口80 ip地址为全部未分配即可
网上的另外一篇文章:
在windows 2003 server 中同时安装apache和iis,两者只能正常启动一个,即apache和iis有冲突,原因在于iis在默认的情况下会占用所有ip的80端口,当启动了iis后,再启动apache时,会出现一个错误提示框,提示内容为:"the requested operation has failed!" ,即“请求的操作已经失败”;若先启动apache再启动iis,系统提示“另一个程序正在使用此文件,进程无法访问”,微软的解决方案是:倘若 apache和iis要共存,且都需要使用80端口的话,需要网卡里绑多一个ip,具体做法如下,供网友参考。
*若apache和iis要共存,且都需要使用80端口,但只有一个ip的话,要使什么apache proxy,即apache代理,与本文方法不相同,请加以区分。
下面以两个ip分别设置两个环境为例说明,已知条件:218.87.96.160绑定了www.jb51.net域名,是一个php的站点,需要apache环境;218.87.96.161绑定了www.yuanma51.com域名,是个asp站点,需要iis环境。
一、apache改成监听一个ip的端口。
在httpd.cfg 文件里。有 #listen 12.34.56.78:80
写成如:listen 218.87.96.160:80
二、下载微软 support tools工具里的 httpcfg.exe 程序
下载地址:
并复制到 c:\windows\system32 目录下。
三、iis改成监听的指定ip (用httpcfg.exe程序来指定)
httpcfg.exe是用来指定iis的只监听指定的ip及端口
添加绑定:httpcfg set iplisten -i 218.87.96.161
查看绑定:httpcfg query iplisten
删除绑定:httpcfg delete iplisten -i 218.87.96.161
在本例中运行: httpcfg set iplisten -i 218.87.96.161 即可使iis只占用 218.87.96.161 ip地址 (若是要监听多个ip,分别指定几条就行了。)
四、重新启动服务器
查看两个web环境是否正常。用 netstat -an | find ":80" 命令就可以查看所有的80端口,最后测试两个ip的网站是否正常。
上一篇: 生活中要怎么把握时机减肥
下一篇: 机房速度和带宽测试的简单方法