一般来讲,如果一切顺利的话,IIS就可以成功运行了。但实践中由于现在操作系统版本的复杂性,会出现很多问题。
" F( b9 I, o. ?+ Z0 g3 g( Z. K故障0 :mmc管理单元无法打开,那就是说安装没有成功。 因为xp版本对应的IIS是5.1,而如果我们安装了5.0或者6.0版本的话,是无论如何也无法成功的。5 l6 o# t. R. p' Q" C
解决:安装之前最好先找对应该安装的版本。; `! M4 \ k( r) d: x
故障1:winxp系统的IIS默认网站无法启动。手动启动时报“服务没有及时响应启动或控制请求”,再进一步检查,“World Wide Web Publishing服务“不能启动所至,该服务手动启动时报错为“错误号127,找不到指定的程序”,程序当然是存在的,删除IIS重装还是不行。
5 z4 k6 n, ~& H1 s0 S7 e原因:系统服务没有启动,因为GHOST版XP可能停用了一些服务,导致World Wide Web Publishing服务不能启动。
" b$ {4 ^0 H- p7 u( w& R Z解决:只要按照他的依存关系,把其他的服务启动了就可以了,它依存关系的启动的是IIS Admin Service。6 @3 R! c6 x% r( q' ^7 @& J2 L) d
注意:还有一种情况可能是IIS版本不兼容。GHOST的WINDOWS有SP2和SP3之分,在排除以上系统服务的故障后,有时会发现仍然是启动不了。后来我发现了IIS5.1 XP和IIS5.1 XPSP3两个版本,我的操作系统是WINDOWS SP3,开始随便下了一个IIS5.1 XP安装包,结果无法启动World Wide Web Publishing服务。8 E3 c% ^% B) g( x) ]7 a |
解决:下了一个IIS5.1 XP SP3安装包重新安装,一切正常。9 s3 {$ G: `1 K. u
故障2:winxp系统的IIS默认网站无法启动。手动启动时报“服务没有及时响应启动或控制请求”,但是“World Wide Web Publishing服务”已经正常启动。1 Z; I0 M5 Y" i. T
原因:系统漏洞补丁导致,关于系统漏洞补丁的资料网上很多,都是那几个补丁删除即可,但都很杂,我细细分析了一下,发现不同的操作系统版本删除的补丁不一样了。+ N7 z% {- J* x7 E3 G% S7 C: s% ~
补丁KB9397379:在微软的官方资料上是这样描述:此重要安全更新可解决一个秘密报告的漏洞。 如果攻击者向 Windows XP Professional Service Pack 2 上 Internet Information Services (IIS) 5.1 宿主的网页发送特制的 URL 请求,则此漏洞可能允许远程执行代码。IIS 5.1 不是 Windows XP Professional Service Pack 2 默认安装的一部分。成功利用此漏洞的攻击者可以完全控制受影响的系统。可以看得出这是针对WINXP SP2的操作系统。
/ _3 h( ?$ K4 C+ P% I9 K# U8 Z* n8 x补丁KB2124261和KB2290570:在微软的官方资料上描述主要是针对winxp sp3,win2003,win2008,win7操作系统。+ {& ^( v1 c- e q" N( K+ D4 [6 U
解决:根据自己的操作系统版本卸掉相应的补丁就可以了。在网上经常碰到有些用户埋怨没有找到相应的补丁,原因就是他没有根据自己的系统版本有针对性的找了。5 D" E2 t) w: [0 N4 Q+ [! n
故障3:同样是 World Wide Web Publishing服务不能启动所至,但服务报错为“错误号1717 未知的接口“1 G% ]$ U+ v9 F5 ] B
原因:没有启动Event Log服务,尽管这不是World Wide Web Publishing所依赖的服务。
& o) D; B M* F l* o$ A% j! H解决:,启动Event Log服务即可。
% Y3 h6 q2 i5 m* D" ]故障4:手动启动时报“服务没有及时响应启动或控制请求” ,但是 World Wide Web Publishing服务已正常启动,漏洞补丁问题也排除。
. G* a$ Z1 m( T& M2 u" r原因: IIS默认的80端口被占用了。: D. l7 K# t5 X: E9 h
方法一:使用DOS命令找到占用80端口的程序,关闭该程序
# ^/ R% Z2 |2 d3 G7 l/ A& ]! z在开始——运行中输入以下命令:0 K; E) P& F) b9 }
1、netstat -an -p tcp –o ) ~0 Y5 V+ {% N I+ ~# {9 q' N5 |+ S* {
在Local Adress 中找到80端口,在PID中找到使用80端口的服务)* n, V) w0 t; }# f/ y& y0 [) J
2、tskill 1182 (1182即占用查找到的占用80端口的PID程序) ' U" b" d8 S! G; A2 q7 r. m
使用tskill命令关闭该程序;注意:这里的PID1182是举例,根据你的实际情况,哪个程序占用了80端口,则关闭哪个程序的PID
% a- v# n5 e9 ]* E l4 Z/ K3 Q3、命令iisreset/restart重启IIS( 或者手动重启IIS服务)( f: r9 K5 x) r5 A0 I0 e) P
方法二:把IIS的80端口改为其它为被使用的端口,如80改为8080,同时改站点的端口为8080。% I* J1 Q1 Q }' D4 }
1、改IIS的80端口改为未被使用的端口,随意取值,未被使用就性,在这里改成8080端口。
6 b8 w* [' w" l8 Q# u9 b2 E! {2、重启IIS。这时IIS已经可以启动,已经可以在IIS里浏览文件。
: I6 A3 P/ o) p# l3、对应的在站点中把站点的端口改为IIS现在的8080端口,如由原来的http://localhost/改成http: //localhost:8080/ 。如果不改站点端口,则每次访问站点时都需要输入端口,如要访问index.asp,就要输入:http://localhost:8080/ index.asp。
5 }. l) M, ]' C: ^- a3 x否则无法访问网页,提示找不到服务器或 DNS 错误。 |