找回密码
 入住遨海湾
搜索
网站解决方案专享优惠-3折上云
查看: 932|回复: 0

IIS与Apache共用80端口方法二

[复制链接]
发表于 2007-12-1 12:19:00 | 显示全部楼层 |阅读模式

登录后查才能浏览下载更多咨询,有问题联系QQ:3283999

您需要 登录 才可以下载或查看,没有账号?入住遨海湾

×
为调试程序,本机安装iis与apache,无法同时使用80端口,现给出解决方法:4 w) s- x4 G8 \* X1 O( E6 Y* f 方法一: : ]5 w! ?' a. u$ x. b2 \ IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址 3 u- C1 s- S' u# ]! I http://www.ad0.cn/netfetch/images/code.gif 程序代码# s. |& I3 j2 J5 L c:\Inetpub\Adminscripts cscript adsutil.vbs set w3svc/disablesocketpooling true. W$ a% Q- A& z" x : @ P4 y+ R6 f1 L 0 t+ H {! I f # y$ M, W" i5 U5 l 该命令反馈如下disablesocketpooling : (BOOLEAN) True c2 E9 a8 _" N3 Q o4 | _6 T; U s5 w8 | 重启IIS $ l0 ~ M. P- Y5 W/ V# i* N k; H # ~* O9 t7 L" O) P" o1 H http://www.ad0.cn/netfetch/images/code.gif 程序代码$ X% Y" `1 ^. [0 ~ Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/disablesocketpooling true 0 u7 C- C7 j7 K$ I. e" _/ H @. F1 P/ q3 K- X 2 t% f( N6 ~) z- E4 x+ ]) ^% B! }: F6 I5 F3 |2 W 由于 DisableSocketPooling 在 IIS 6.0 元数据库架构 (MBSchema.xml) 中被定义为有效属性,所以,您仍然可以使用 Adsutil.vbs 设置该属性,但这种设置不起作用。IIS 6.0 中的功能是新增的核心级别驱动程序 HTTP.sys 的一部分。要配置 HTTP.sys,您必须使用 Httpcfg.exe [nfScript]google_ad_client = "pub-4475724770859924";google_alternate_color = "FFBBE8";google_ad_width = 468;google_ad_height = 60;google_ad_format = "468x60_as";google_ad_type = "text_image";google_ad_channel ="9379930647";google_color_border = "F0F0F0";google_color_bg = "FFFFFF";google_color_link = "FF6FCF";google_color_url = "38B63C";google_color_text = "B3B3B3";[/nfScript] ; B% M& M$ m9 t! n[nfScript=http://pagead2.googlesyndication.com/pagead/show_ads.js][/nfScript]6 e# B/ }. m$ }, K. ] ! ~7 o: w) O% I) o* P! m) j 方法二: & ] T/ W2 _( J l: a8 ^( G IIS6,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址 , w% r' q1 J4 l' @2 i. ` : `0 R% X) e# b, q3 } E+ G9 I 到2003的CD下的 support/tools/Support.cab。解压出httpcfg.exe文件,COPY到windows/system32/目录下,用法自己看帮助 ; Q2 T+ R: q9 L* v" N5 t! j& }' g- ~ , b# v& S6 o' g, }命令行 绑定到某IP: httpcfg set iplisten -i 192.168.0.1 即命令使用IIS的只监听指定的IP及端口 查看绑定: httpcfg query iplisten 删除绑定: httpcfg delete iplisten -i 192.168.0.1 8 ] d' N' K0 t: { / @: l e( p# {+ U+ d命令行 http://www.ad0.cn/netfetch/images/code.gif 程序代码 + ^( A4 M4 j2 J* y; c% J) Xnet stop Apache2 net stop iisadmin /y net START Apache2 net START w3svc 0 O! L& }+ v4 J& q8 J# l/ M8 v1 W: X# ^# [9 _- ~- l 4 o# d, t L) ~0 L) I E7 e3 C1 J7 L% Z" n1 ~ 保证iis下的ip设置为全局默认,Apache中httpconf设置listen 192.168.0.2:80,就应该可以两个服务同时运行,相互不冲突了。 w) B$ h: Z( @6 a d L% ], G2 l9 w% S6 P- `IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2 6 |# x2 z$ B$ Y7 L+ ^" [ ' m5 n4 C R) T! U @5 h方法三: - g% ^( i) i0 d4 }3 W 网上常用的单IP共用80端口方法,不过不推荐,只是使用Apache的代理,速度有影响将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理。 5 A& l3 A$ z' K/ F% R * y B: a0 F) d. g 在httpd.conf里面,取消下面四行的注释: . j( A }8 M4 g4 J W& b5 ]' Lhttp://www.ad0.cn/netfetch/images/code.gif 程序代码 : J" p: z& X0 `5 G6 L, E2 a8 qLoadModule 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.so3 f% U) S2 t3 o5 F % A: G4 b; O6 E: ~! W. p6 L% n+ ^- Z/ P: S9 |9 V' F 9 q; |5 O/ D% d, j( Y* x& K7 k然后建立一个虚拟主机,将该域名的所有访问转向81端口。 6 p. h3 `3 W8 f- k http://www.ad0.cn/netfetch/images/code.gif 程序代码 / N! g- q+ L$ S# K+ A* `/ U' uServerName www.ad0.cn ProxyPass / http://localhost:81/ ProxyPassReverse / http://localhost:81/, Q* c5 D- ^( Y6 D$ q" H: `4 ` \ \ 1 p: e, r' Z+ I4 s% Y& d . R: M: H2 U+ L R 7 t8 `3 D2 b) ]0 ~' }' d; c8 G* N这样,对外就可以只需要一个端口,即可同时使用apache和IIS的功能了 [nfScript]google_ad_client = "pub-4475724770859924";google_alternate_color = "FFBBE8";google_ad_width = 468;google_ad_height = 60;google_ad_format = "468x60_as";google_ad_type = "text_image";google_ad_channel ="9379930647";google_color_border = "F0F0F0";google_color_bg = "FFFFFF";google_color_link = "FF6FCF";google_color_url = "38B63C";google_color_text = "B3B3B3";[/nfScript]* @ t( f# t' T3 e [nfScript=http://pagead2.googlesyndication.com/pagead/show_ads.js][/nfScript]/ A7 K1 D9 e* O9 n* ~) H ; o5 d# \9 ?0 w0 F 类推,使用第二种方法,你可以在IIS上配置PHP4,Apache2中配置PHP5,只需要IIS中安装PHP4,把php.ini复制到\ windows目录即可,这个就不用说了吧,Apache2中,只要把PHP5的php.ini放在PHP5安装目录里面就行了 2 X0 r P# b. g* ?8 ?- k & [$ l9 T6 @8 b1 Y8 S配置Apache以支持PHP5: : O; \& J& e, D% S0 ?4 g3 Bhttp://www.ad0.cn/netfetch/images/code.gif 程序代码 % c, W" ]7 S, T; ~' p9 N" v" G6 oLoadModule php5_module "D:/PHPServer/PHP5/php5apache2.dll" AddType application/x-httpd-php .php DirectoryIndex index.html index.php PHPIniDir "D:/PHPServer/PHP5" # \( {# v$ h, I5 \) R) ?4 w4 \# @$ _" }6 x+ r7 G& [# k( a& | j! B$ O% I2 a+ L S+ Y ) ^& l \" u4 \4 q 其中最重要的一条就是 PHPIniDir,用来指明php.ini文件所在位置,即PHP5的安装目录,注意所有目录的应该改为D: /PHPServer/PHP5这种格式,而非D:\PHPServer\PHP5,IIS的访问地址为http://192.168.0.1, Apache访问地址为http://192.168.0.2
遨海湾-心灵的港湾 www.aosea.com
您需要登录后才可以回帖 登录 | 入住遨海湾

本版积分规则

网站解决方案专享优惠-3折上云

QQ|手机版|小黑屋|遨海湾超级社区

GMT+8, 2025-4-4 23:15

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表