找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 12817|回复: 0

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

[复制链接]
发表于 2013-7-1 18:32:54 | 显示全部楼层 |阅读模式
很多朋友在用IIS6架网站的时候遇到不少问题,而这些问题有些在过去的IIS5里面就遇到过,有些是新出来的,做了很多次试验,结合以前的排错经验,做出了这个总结,希望能给大家帮上忙。" o# L( _! m' u1 a9 ^; N

+ ~* `: W( O( a8 v$ g' P1 N+ ~问题1:未启用父路径
. i4 o' ?- }# _5 O症状举例:
) _( z! N9 s4 G% s8 M: v5 d/ t' f2 Q7 `1 D  ?3 s* C
    Server.MapPath() 错误 \'ASP 0175 : 80004005\'1 g/ C: X7 V  j" q; d+ p0 B
8 o& y- U) C& U6 |  w+ q
    不允许的 Path 字符" X4 u/ ^: F) @& d& ?9 m

2 C" b; A8 v; q* z$ u% E/ }    /0709/dqyllhsub/news/OpenDatabase.asp,行 4& i3 I$ o) d1 O- `+ d+ c( n

/ @8 e6 l+ k% J) z9 U- s& ~% D    在 MapPath 的 Path 参数中不允许字符 \'..\'。% @  G$ t# Z8 J

: J& x# H; F* q$ c9 C: `8 C4 J# g2 y$ H* n7 V: n0 P/ z
原因分析:4 \. n$ S1 W  e5 S0 g* h% _0 W2 V
  N2 u8 _8 ~* V% h: K; {
  许多Web页面里要用到诸如../格式的语句(即回到上一层的页面,也就是父路径),而IIS6.0出于安全考虑,这一选项默认是关闭的。 如果是使用LEADBBS论坛的朋友就要注意了,DV的不会出现问题。+ N. H: V  q9 }4 u3 ?/ r  \! a
" f9 E( N* k1 z0 x7 I8 L1 ^& x
解决方法:
6 U7 n# r7 T4 f( g1 d, |; Z
+ M3 r0 l7 q+ ?0 i, ], z) L在IIS中属性->主目录->配置->选项中。把”启用父路径“前面打上勾。确认刷新。
9 @) Y' G  U1 u# H6 e0 ^5 ]6 R( F9 }. D
问题2:ASP的Web扩展配置不当(同样适用于ASP.NET、CGI)! Q2 b/ V) a3 O0 X
  G* c* u( e6 H2 m
症状举例:! q+ h9 T6 |9 [- j- L2 r! `
( M& W' E0 Q) K% I7 e
HTTP 错误 404 - 文件或目录未找到。1 N5 d3 a- X5 `1 B3 q- `! x
  m: D: ?; e+ e, B
原因分析:
* b1 |) v: |2 a* V0 ?
/ O& Y0 ]0 h! \" o; G
5 N& L, r$ [. }5 h: o: v' Y* D    在IIS6.0中新增了web程序扩展这一选项,你可以在其中对ASP、ASP.NET、CGI、IDC 等程序进行允许或禁止,默认情况下ASP等程序是禁止的。
* }8 b+ m. g+ y# X8 N9 I1 t. d8 c+ u- c
解决方法:8 o' D1 s% l/ \! e9 V
% b! |# d- F) V9 d$ Y4 B, u4 o
在IIS中的Web服务扩展中选中Active Server Pages,点击“允许”。
" ?" }5 \; C1 i9 j2 n1 ?) W1 T9 h6 L( I7 s& P6 C$ @' B4 V
问题3:身份认证配置不当
1 \. d! U% V+ q( y) ~3 e, A/ C& ^' g9 N$ e( X* z, K5 L) c
症状举例:
7 I( y( U3 a! ]" z# M4 V! q) _0 l; a6 o$ [# ~! l+ Q
    HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。
& ?) W8 g$ ]( _& R0 M4 T+ Y6 s; f9 l! S5 m' Y/ u2 c0 u
原因分析:% b* n) P) x7 y# v7 Z! [6 q2 p
1 y+ x7 ^& o3 w1 n- a
    IIS 支持以下几种 Web 身份验证方法:: c. I2 b, b- e( i5 x  |
- j# {1 ?+ S5 @  m6 n" W* Y
(1)匿名身份验证
7 [1 P0 p7 o) i
2 W. J$ V% k- C% B- S    IIS 创建 IUSR_计算机名称帐户(其中计算机名称是正在运行 IIS 的服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份验证。此帐户授予用户本地登录权限。你可以将匿名用户访问重置为使用任何有效的 Windows 帐户。
; _+ X( r5 O. `0 H/ N. D- A8 g; U. h/ m& w
(2)基本身份验证6 {# v& g2 |0 M( N! r8 v. a
! z* J5 c2 |" Y" [+ D
    使用基本身份验证可限制对 NTFS 格式 Web 服务器上的文件的访问。使用基本身份验证,用户必须输入凭据,而且访问是基于用户 ID 的。用户 ID 和密码都以明文形式在网络间进行发送。
" M" G& M( C4 J9 e  ^+ G$ T3 r. ^' Z/ V1 ^; a9 m/ H
(3)Windows 集成身份验证
4 _; D7 v0 W# c( r3 `3 @; d6 k) S; R6 J( r# Q% H" I0 R7 O7 @
    Windows集成身份验证比基本身份验证安全,而且在用户具有Windows域帐户的内部网环境中能很好地发挥作用。在集成的Windows 身份验证中,浏览器尝试使用当前用户在域登录过程中使用的凭据,如果尝试失败,就会提示该用户输入用户名和密码。如果你使用集成的Windows身份验证,则用户的密码将不传送到服务器。如果该用户作为域用户登录到本地计算机,则他在访问此域中的网络计算机时不必再次进行身份验证。2 X/ N9 t' ?: {

) x. O- y& a' i9 c- G* \0 |+ e(4)摘要身份验证4 R7 f* T4 h% y4 M
+ o) r1 L' I; m# V
    摘要身份验证克服了基本身份验证的许多缺点。在使用摘要身份验证时,密码不是以明文形式发送的。另外,你可以通过代理服务器使用摘要身份验证。摘要身份验证使用一种挑战/响应机制(集成 Windows 身份验证使用的机制),其中的密码是以加密形式发送的。
# R* Q; I6 D$ ?: E! `1 Q
7 d7 B# k& q: b+ H- c.NET Passport 身份验证: b/ r8 d6 H: R5 ?$ |+ u- k
3 a! a+ W0 [" ^1 k' f" d
Microsoft .NET Passport 是一项用户身份验证服务,它允许单一签入安全性,可使用户在访问启用了 .NET Passport 的 Web 站点和服务时更加安全。启用了 .NET Passport 的站点会依靠 .NET Passport 中央服务器来对用户进行身份验证。但是,该中心服务器不会授权或拒绝特定用户访问各个启用了 .NET Passport 的站点。
! b5 \3 d' L* y" Z7 x6 J: i1 A% {) [4 S1 v+ m0 ~
解决方法:% f* R8 M- j: \% m

% ~: k( M9 A! s8 h: ?根据需要配置不同的身份认证(一般为匿名身份认证,这是大多数站点使用的认证方法)。认证选项在IIS的属性->安全性->身份验证和访问控制下配置。
, O1 N. Z) ]/ [9 j+ |
. A! {# U7 k+ g; m: _9 ]
4 g- X# `$ E1 n" ~% S7 L' v    问题4:IP限制配置不当+ {8 U" _& Q0 h# e) _* k

4 X2 f9 ~: t9 W症状举例:
/ K5 |- S7 K/ H# P
( h7 c) L+ Z$ w; R! l/ P1 b  P) u2 @; R! e5 l
    HTTP 错误 403.6 - 禁止访问:客户端的 IP 地址被拒绝。
" {' f4 q7 d# k3 _2 Z
# \! x4 }( j) `  p! J原因分析:
1 ~3 v& N$ v8 ~- l/ _! K0 g8 z! b& @

" {  F; A9 ?, g& S9 z( c9 j& T    IIS提供了IP限制的机制,你可以通过配置来限制某些IP不能访问站点,或者限制仅仅只有某些IP可以访问站点,而如果客户端在被你阻止的IP范围内,或者不在你允许的范围内,则会出现错误提示。
6 V! p6 z" ]( f6 `1 r) w2 R; z% t
解决方法:+ N' m( ^0 y% j3 s; b3 E
5 ?* j: W  F% g% B+ J: V
进入IIS的属性->安全性->IP地址和域名限制。如果要限制某些IP地址的访问,需要选择授权访问,点添加选择不允许的IP地址。反之则可以只允许某些IP地址的访问。
% ~* k+ N! r1 Q9 O) I! F' L: j; E  F6 [+ x  v0 M2 L
问题5:IUSR账号被禁用
0 l+ c5 l% e: u2 h. b; m/ Q7 g: U: V& C
症状举例:+ I2 ~9 |2 }7 T1 P( I$ V+ I4 v6 }6 S
# _  ]6 N: q9 R1 `) Z
2 m# V; r# r+ o5 C# d: N
    HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。
& g! M4 s, S" K* t; B8 h' a$ O/ T8 \3 B6 d# z0 ~
原因分析:
9 C( i% Y/ D; ?; c$ }7 ~+ t- t, |! t9 ]
, i7 Q* s( h# o! V8 d7 o" y  ]
7 N8 M4 f: I8 E7 R" C# z: Z, _$ v+ [    由于用户匿名访问使用的账号是IUSR_机器名,因此如果此账号被禁用,将造成用户无法访问。
3 Y% g" F4 h% L; k0 s8 x: o
5 s% ~7 O# r! x. l$ }解决办法:4 m! F% f% m$ n8 O4 \
3 N3 z# o8 b4 v4 E. ^6 k
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。
0 v% u0 @) q8 C0 @0 X6 K: u+ D
: Q/ l" n* h& c$ |+ }( i# l, H问题6:NTFS权限设置不当
9 g# ^& v" g: ]& V症状举例:3 F( Q7 i, d2 T% i
( ~& Q" M- e& W+ z3 v2 e3 S$ @

' H5 G6 N( P: X% h7 W9 t( I) h    HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。% S, `" P( P9 _( Y* p, W$ c( C

- O1 q7 f. z0 c  C- y  T- a8 U& a" I8 l原因分析:! n* L/ N% e0 j- X4 s

2 ^' E2 i3 N6 G
0 v- W, _* L! s, j+ t    Web客户端的用户隶属于user组,因此,如果该文件的NTFS权限不足(例如没有读权限),则会导致页面无法访问。4 c0 T- }9 e2 P9 Q7 O

' V% B! |0 y$ b# U8 f9 ^* L解决办法:
; L# P: O1 t. [. \3 {% V
. a" x9 C2 k- L' b% g2 f: g; z/ Z3 R1 y
    进入该文件夹的安全选项卡,配置user的权限,至少要给读权限。关于NTFS权限设   置这里不再馈述。6 o+ L4 u- A5 y' ^
! n- N- J0 u. \+ _- l( S
问题7:IWAM账号不同步
7 y" q2 z  w. b/ k5 z3 L6 q3 p5 H& E6 y8 k7 w
注意:这个问题经常出现!!!!0 y( E9 G9 Z0 w6 X2 {
症状举例:6 \. Y- g- q& _/ S
& H: a9 `2 A/ \' Z" H& h( C* u

) T; @) ^6 e# X! c% l8 C    HTTP 500 - 内部服务器错误
4 l# \9 L" Z" ^/ g5 s
: O& Q# d' D% `: o# {, z; M原因分析:' a3 T) n7 J' \- Y! V- B

* C* q0 |6 M7 _: t1 s/ S: f7 r& m1 t) N  d( n
    IWAM账号是安装IIS时系统自动建立的一个内置账号。IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。系统对IWAM账号的密码同步工作有时会失效,导致IWAM账号所用密码不统一。
6 b8 F' d! F2 ]
' R) Q: g+ b8 Q. k3 L解决办法:
% o% v* `' U/ \) U" C- Q
: i+ l7 M  L& M4 E9 f5 a
5 }) u8 J/ D2 X1 O) w9 N8 ^+ _    如果存在AD,选择开始->程序->管理工具->Active Directory用户和计算机。为IWAM账号设置密码。运行c:\Inetpub\AdminScripts>adsutil SET w3svc/WAMUserPass +密码同步IIS metabase数据库密码运行cscript c:\inetpub\adminscripts\synciwam.vbs -v 同步IWAM账号在COM+应用程序中的密码) S& K! j+ u* o. ]

$ P% h. h7 ?. M8 \" i问题8:MIME设置问题导致某些类型文件无法下载(以ISO为例)7 y9 o8 u* i$ D. A' S* m
% E6 ]! p$ p- n8 N# ^1 Q
症状举例:9 l& P, H; ]+ e' X8 z8 o
, R& [. F1 [% e+ l* Z
    HTTP 错误 404 - 文件或目录未找到。
6 p7 _( f7 h6 n6 Z2 ^
" ^. M; ^; X$ E( w* Z. K原因分析:
6 a! N* o9 [9 M) q# L5 ^9 L1 i7 p$ z8 G
6 i$ [  z5 |# E6 u. x- O    IIS6.0取消了对某些MIME类型的支持,例如ISO,致使客户端下载出错。
3 M3 `$ w" n. p! ~8 n1 g
* t% r( }) ]* L8 E解决方法:2 [: W+ _1 {' H5 x, q
: S  ~8 i6 n: _8 I# Q
    在IIS中属性->HTTP头->MIME类型->新建。在随后的对话框中,扩展名填入.ISO,MIME类型是application。- T( d& j% \5 a. G- ?, Z' G& q

# B. A7 K4 z! l& n8 b5 s另外,防火墙阻止,ODBC配置错误,Web服务器性能限制,线程限制等因素也是造成IIS服务器无法访问的可能原因,这里就不再一一馈述了。6 M% O3 A3 ~, P1 \3 X9 Z7 O
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-2-7 04:04 , Processed in 0.068243 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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