找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 14665|回复: 0

windows2003 IIS6架设网站常见问题及症状答疑

[复制链接]
发表于 2013-7-1 18:32:54 | 显示全部楼层 |阅读模式
很多朋友在用IIS6架网站的时候遇到不少问题,而这些问题有些在过去的IIS5里面就遇到过,有些是新出来的,做了很多次试验,结合以前的排错经验,做出了这个总结,希望能给大家帮上忙。. q( d! V5 r5 V% L1 U4 I" i2 w: `
: F$ P% [4 Q  n1 `6 i7 v. T5 l
问题1:未启用父路径
7 S2 E. q6 W7 Y症状举例:
! @" c# t! u* r* `) a# B
: ]) c0 _2 j+ D5 h! L    Server.MapPath() 错误 \'ASP 0175 : 80004005\'
# J/ F3 X1 P* d6 I  {# D9 {9 t. s
- [/ P4 @( v  p    不允许的 Path 字符7 Q! u3 a# b9 R9 d4 E# S/ v( H% X
: R8 l/ T8 Q+ ]
    /0709/dqyllhsub/news/OpenDatabase.asp,行 4
; H/ |+ P8 y% t" E
9 O( e: B' W+ E% ~# h    在 MapPath 的 Path 参数中不允许字符 \'..\'。
! b3 p2 u7 J, z0 M6 U: q$ t! s* @2 R, o. N, Q

; F) P7 L  K5 O; T' V4 F原因分析:
# n  J% O/ e) [4 j2 ]
5 i; O. f, \. O/ O  许多Web页面里要用到诸如../格式的语句(即回到上一层的页面,也就是父路径),而IIS6.0出于安全考虑,这一选项默认是关闭的。 如果是使用LEADBBS论坛的朋友就要注意了,DV的不会出现问题。" z3 b6 @* |" m" n

" E& I- {6 A% w# d4 J  m( }5 L解决方法:+ T% f9 h$ q" u0 t: B+ s

' W4 d  V; ~' _! e+ P6 m3 g: u在IIS中属性->主目录->配置->选项中。把”启用父路径“前面打上勾。确认刷新。
- v' p% s$ e" n1 ~
" `# y, r: d4 Z' a/ G问题2:ASP的Web扩展配置不当(同样适用于ASP.NET、CGI)+ M- [: O- }8 J7 a( z
' |' Y+ s6 f8 A3 G2 y+ w
症状举例:
4 E% ]) [  ^' C+ s& c( D  I2 J# E) s* S; U, z6 h! u0 s7 X& Y
HTTP 错误 404 - 文件或目录未找到。
8 r/ \$ P6 |2 M; [; Z0 D
1 {- Z( _$ c: n7 i  f+ K原因分析:
$ e7 f7 I  z0 l! `& s
# X6 }1 l& U3 w3 U+ H# e! E0 s0 g8 |5 J1 f* ^# Y/ H
    在IIS6.0中新增了web程序扩展这一选项,你可以在其中对ASP、ASP.NET、CGI、IDC 等程序进行允许或禁止,默认情况下ASP等程序是禁止的。
+ w3 |$ J  K0 `4 f
( t0 A% R+ O  w$ Q% x解决方法:
/ K' X- Z. d) e$ n0 F1 ~& G. I* J
在IIS中的Web服务扩展中选中Active Server Pages,点击“允许”。8 R3 I% k, z% Z6 `* Q& G

0 m4 A+ p/ l3 ~% j问题3:身份认证配置不当
6 w  @! {* o% M& G- w  a
( }7 C6 p  g4 n, I7 `. X症状举例:  K2 R9 ^- n6 |  B

# g5 e) I# @" D0 m( P2 W    HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。
6 H' p8 z6 S! t. v$ G8 @5 s  g& J* X8 e- s2 p) _
原因分析:
) \" N1 i/ B$ q1 e6 J& U3 x; k% `) Q% Z
    IIS 支持以下几种 Web 身份验证方法:  E# [/ Z& h3 C( n7 m) X

$ W& z8 ^2 ~/ V! @! r6 w& r& s(1)匿名身份验证
% X% i  d- X3 H& L/ c
  t4 u) e2 v, [6 `# D4 d2 B6 \    IIS 创建 IUSR_计算机名称帐户(其中计算机名称是正在运行 IIS 的服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份验证。此帐户授予用户本地登录权限。你可以将匿名用户访问重置为使用任何有效的 Windows 帐户。7 _! K0 D5 t  I, I

  O# L* z( u- U1 y(2)基本身份验证
0 {% }- k3 u7 b4 S7 d# U
' w. j2 \* d  s# l5 T    使用基本身份验证可限制对 NTFS 格式 Web 服务器上的文件的访问。使用基本身份验证,用户必须输入凭据,而且访问是基于用户 ID 的。用户 ID 和密码都以明文形式在网络间进行发送。, E* f* @$ b' j3 D

. i* p" S# o) ~$ M( [(3)Windows 集成身份验证; N1 o3 R! z; M/ T$ d  L9 I5 R

" @9 @" B* |- j: h2 V7 k    Windows集成身份验证比基本身份验证安全,而且在用户具有Windows域帐户的内部网环境中能很好地发挥作用。在集成的Windows 身份验证中,浏览器尝试使用当前用户在域登录过程中使用的凭据,如果尝试失败,就会提示该用户输入用户名和密码。如果你使用集成的Windows身份验证,则用户的密码将不传送到服务器。如果该用户作为域用户登录到本地计算机,则他在访问此域中的网络计算机时不必再次进行身份验证。2 A" ]" u. k" y! o/ s0 b4 d6 O8 O

! N( h& M/ m4 p" n4 t- w- Z(4)摘要身份验证, p) c' R& k* p" C  W+ k

* R. `3 v; Y; K0 J    摘要身份验证克服了基本身份验证的许多缺点。在使用摘要身份验证时,密码不是以明文形式发送的。另外,你可以通过代理服务器使用摘要身份验证。摘要身份验证使用一种挑战/响应机制(集成 Windows 身份验证使用的机制),其中的密码是以加密形式发送的。) i4 e1 k8 }/ P5 Y/ M

. t, T' T9 K6 v5 K( s, s5 d- I, I4 r.NET Passport 身份验证1 _# `' |' s* a4 ^
) a) z  V, X& g" O
Microsoft .NET Passport 是一项用户身份验证服务,它允许单一签入安全性,可使用户在访问启用了 .NET Passport 的 Web 站点和服务时更加安全。启用了 .NET Passport 的站点会依靠 .NET Passport 中央服务器来对用户进行身份验证。但是,该中心服务器不会授权或拒绝特定用户访问各个启用了 .NET Passport 的站点。! v+ D  f7 z+ r( @7 ]
3 P1 e- \- W9 b, q  S
解决方法:
! o1 ^, @  f3 _& E4 g8 @
: l+ T: l3 G* c; u* r5 }) f根据需要配置不同的身份认证(一般为匿名身份认证,这是大多数站点使用的认证方法)。认证选项在IIS的属性->安全性->身份验证和访问控制下配置。0 u0 M. N8 _  m7 _
2 S9 ?& ~4 H) b6 e( S
3 T2 J2 T: M( \- z! j1 u
    问题4:IP限制配置不当+ h- S8 Z& L  X; k6 b  [

1 h6 C$ f5 f  w* T; ]. Q4 d$ z8 ^症状举例:, d! U6 E5 x: o  }0 A

* j) N* K, p& N3 R# c$ l8 ?+ H6 a' Y8 [! W
    HTTP 错误 403.6 - 禁止访问:客户端的 IP 地址被拒绝。
3 \7 G* g/ y5 r& `/ T) M) z- i, x: U# s+ H0 f4 c  g( G: B
原因分析:+ }9 ]) ?# k5 x

2 d9 X7 j4 A: y2 m( h- O6 |7 z9 c/ y+ e$ Y
    IIS提供了IP限制的机制,你可以通过配置来限制某些IP不能访问站点,或者限制仅仅只有某些IP可以访问站点,而如果客户端在被你阻止的IP范围内,或者不在你允许的范围内,则会出现错误提示。8 H0 ^7 {( R) r" ]+ f, R/ S

3 P8 `' L* j7 @, H: U' T( Q9 d1 ]解决方法:
7 S# w  {6 D$ s2 u- M3 Z
0 ]' J" p2 Z3 w# N进入IIS的属性->安全性->IP地址和域名限制。如果要限制某些IP地址的访问,需要选择授权访问,点添加选择不允许的IP地址。反之则可以只允许某些IP地址的访问。
  Y: H. g! B0 t: _
% I+ c; ?  M" ~) b问题5:IUSR账号被禁用
( o1 f; ^; d6 g0 B* m0 S8 N3 F1 d5 a1 h
症状举例:. ~" Z) `1 h  b3 \
/ o8 d/ q, N/ e0 I# w% Y

; Y3 Q- @. u* {) Q, U; x    HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。
  C* h- z, A8 ]$ r  e. {9 X! }" n3 y: j$ s* }# Z
原因分析:! P) D- r2 e- ]4 m& l

5 {" O* r9 Z9 l4 ?5 a+ S# o! Y' F9 p- A
    由于用户匿名访问使用的账号是IUSR_机器名,因此如果此账号被禁用,将造成用户无法访问。1 r5 Z+ ~8 b5 P0 d) v& U: B

% L9 a; _6 s* K解决办法:5 @1 J8 G; J& W, F
& [4 B/ r7 C7 N+ T) D
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。
5 b: G7 I- c/ e" t$ S: N; {8 a6 Y- j2 P0 c
问题6:NTFS权限设置不当
# S# f5 \6 n' B& v症状举例:
8 F" `4 P' i! c* G" b; R& j4 }) _+ y$ g1 C
! M3 V6 Q; s& e$ v
    HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。; S$ s8 N# P* T8 \5 S7 e$ y

) o& |3 @7 V& [: U- O: a8 B( |/ [原因分析:* \3 a0 t) M1 J% [. q+ _, X1 j

4 O" L* S! r- B; d  I- z/ I' |1 {$ y1 {0 p/ O. m
    Web客户端的用户隶属于user组,因此,如果该文件的NTFS权限不足(例如没有读权限),则会导致页面无法访问。
% S- @; N! U) h( {- R/ b; ]" F% ~9 j: @; F: N
解决办法:7 w& K; G" l* x* \! |: e+ b

, }0 ]0 S$ f# Q
/ p8 d  e+ w6 u/ w! \    进入该文件夹的安全选项卡,配置user的权限,至少要给读权限。关于NTFS权限设   置这里不再馈述。
  w' d! o3 A: z  Q# Y' A% M. N$ h1 |% x& y& n+ t
问题7:IWAM账号不同步
' ^: k  G0 c- e$ ], X; z2 X) i# l0 V. T5 P& t+ L
注意:这个问题经常出现!!!!! W. P+ ^" M2 ?4 T
症状举例:
; \* a0 @7 n' Q
2 u' M3 m& q& H8 F/ {* N5 j4 S, V8 d* T, o1 b
    HTTP 500 - 内部服务器错误
+ F+ |$ m# d! R* j% p: U' t' G# B' h# o2 \
原因分析:
. B" B; x3 z5 M0 E7 w
6 y# t( z8 V7 Q, c/ v+ \1 Z+ H. B4 ^- x
    IWAM账号是安装IIS时系统自动建立的一个内置账号。IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。系统对IWAM账号的密码同步工作有时会失效,导致IWAM账号所用密码不统一。
# e# I% f! ^! d. g( f( l
1 J; w) J2 c9 ?6 z7 h3 u解决办法:( j6 u& ?  B' \/ i2 K6 p& v5 ~) D

+ p/ \5 {% R4 x# ~
2 S) O/ E& c1 q  U" I7 r4 ^9 k& {    如果存在AD,选择开始->程序->管理工具->Active Directory用户和计算机。为IWAM账号设置密码。运行c:\Inetpub\AdminScripts>adsutil SET w3svc/WAMUserPass +密码同步IIS metabase数据库密码运行cscript c:\inetpub\adminscripts\synciwam.vbs -v 同步IWAM账号在COM+应用程序中的密码! Z. ?) H* ~+ t6 l

% K/ `' P/ I4 f( u0 D: y) G# j问题8:MIME设置问题导致某些类型文件无法下载(以ISO为例)0 t' I2 x9 p. G. M0 G! {! f1 q

& {8 c; ~) _+ n6 B" ?) W5 o症状举例:5 P* }. U$ H" K# }- \

9 M( e* p1 e  c: G4 |    HTTP 错误 404 - 文件或目录未找到。
9 ?4 R+ c& N! {$ t6 B" |) e
8 i: c! A7 q) f$ A1 ~原因分析:% U6 a' P& ?6 n2 v# t8 ~! w
0 ^' e% m' H* ~  ~* T: o" G3 Z7 e
    IIS6.0取消了对某些MIME类型的支持,例如ISO,致使客户端下载出错。. B# b/ l! y# B- X0 a# s0 k; J. V2 A. z

0 D& U& ^* a6 ^. o7 ?$ J  K解决方法:
% w+ a. h( n7 R- Y3 v4 q! X, P3 \
- h, c- Z) j, Y  W5 u8 i- W    在IIS中属性->HTTP头->MIME类型->新建。在随后的对话框中,扩展名填入.ISO,MIME类型是application。
: ?4 q5 B9 H  B' M. G! D4 p3 U$ R% @2 ^
另外,防火墙阻止,ODBC配置错误,Web服务器性能限制,线程限制等因素也是造成IIS服务器无法访问的可能原因,这里就不再一一馈述了。; {% z; O& f* v
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2026-8-22 00:38 , Processed in 0.116831 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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