找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 15032|回复: 0

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

[复制链接]
发表于 2013-7-1 18:32:54 | 显示全部楼层 |阅读模式
很多朋友在用IIS6架网站的时候遇到不少问题,而这些问题有些在过去的IIS5里面就遇到过,有些是新出来的,做了很多次试验,结合以前的排错经验,做出了这个总结,希望能给大家帮上忙。  g3 A  W' `% ?4 u
" x; Y# K$ N7 F% T, z' e
问题1:未启用父路径
: d9 q7 f& h; B% n/ w) f# [- |4 S症状举例:   ^0 c% N& V1 {- O, H6 M

. y% r/ L% G6 `: e1 g; f, h7 C    Server.MapPath() 错误 \'ASP 0175 : 80004005\'
5 J5 @4 U- y8 j# x2 C1 q$ F- J$ q9 _
    不允许的 Path 字符
, P; I2 W- [- p3 ?( e$ X: W: L
& B! `7 v2 ~9 x( R6 T# `) g# \    /0709/dqyllhsub/news/OpenDatabase.asp,行 45 R. l0 Q2 ?( P' J' V; Z$ q, p6 @

# n2 E5 t8 k+ p! A4 E5 Y+ q    在 MapPath 的 Path 参数中不允许字符 \'..\'。& }8 e, W4 Q. `4 C* Q
7 o0 y. S# X; @$ M; W( B9 c
# U& t0 c! Y/ _9 X( {' ?; ]
原因分析:1 }6 `& d4 l, `- b

/ T9 W% I! h$ P( h3 j0 I3 ^  许多Web页面里要用到诸如../格式的语句(即回到上一层的页面,也就是父路径),而IIS6.0出于安全考虑,这一选项默认是关闭的。 如果是使用LEADBBS论坛的朋友就要注意了,DV的不会出现问题。7 O6 S8 r  U2 Z" t* ?9 G

$ @5 M+ Y5 J* y) }3 Z- d解决方法:8 s0 I  u$ r' F& z
% b, y0 L7 ~9 w$ a
在IIS中属性->主目录->配置->选项中。把”启用父路径“前面打上勾。确认刷新。
4 j2 Q4 Y$ R4 ?0 V/ R% ]" y& Y5 _4 C; R4 @5 Y% f2 O  U
问题2:ASP的Web扩展配置不当(同样适用于ASP.NET、CGI)5 ]) S! F0 C" ?/ f: l

2 B5 n' g; [  @. Y' z5 ~, ?: o0 Q. l" b症状举例:
5 @6 Z$ s2 ?+ U" z. W0 p& Z# P! F) c3 a+ G
HTTP 错误 404 - 文件或目录未找到。/ F3 j5 Y* l% p* ^8 T

; Z  U+ o. C' G$ }- L+ j原因分析:
2 b$ Y+ C! J/ k+ D- `+ K7 ]: z* w% @7 Z; z; r

* V$ b) D: @" ^1 ^( D    在IIS6.0中新增了web程序扩展这一选项,你可以在其中对ASP、ASP.NET、CGI、IDC 等程序进行允许或禁止,默认情况下ASP等程序是禁止的。
/ x2 A% i" ^! L3 @5 g( R2 k. p* L: O" b5 f# W
解决方法:
9 c+ E3 ]( v' U
+ Y; }7 ~# v" P( n在IIS中的Web服务扩展中选中Active Server Pages,点击“允许”。, w: r/ m, c* f8 P$ X% @

! ?; h" B  J$ d问题3:身份认证配置不当' \! @4 d" g; t. ]" O2 q9 ^) g
- W# D& d0 I6 k+ ]/ U
症状举例:' z7 l5 R. C: E! D/ @- T

# |! F+ E! t) j* j, W    HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。+ _) i) X3 v# a4 n. @9 M4 x

% Z9 ?2 d2 |- D; `% O5 F原因分析:* n$ \1 M9 W& G# [
" y; m, l9 L' f/ S2 s) P
    IIS 支持以下几种 Web 身份验证方法:
! |8 m; b- Y- p+ b1 T6 o8 A. x3 l: |5 A( C) E
(1)匿名身份验证
6 r# S. ~' Z9 U# l& S& N/ [9 B4 N# V- k/ @
    IIS 创建 IUSR_计算机名称帐户(其中计算机名称是正在运行 IIS 的服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份验证。此帐户授予用户本地登录权限。你可以将匿名用户访问重置为使用任何有效的 Windows 帐户。
- P# w% n, D0 E3 @, e$ X; H# z% C1 w" G+ t# t  v' W$ p
(2)基本身份验证; D$ ^8 U5 j4 z5 y% U( l

! u5 C6 c8 J! @! k    使用基本身份验证可限制对 NTFS 格式 Web 服务器上的文件的访问。使用基本身份验证,用户必须输入凭据,而且访问是基于用户 ID 的。用户 ID 和密码都以明文形式在网络间进行发送。
! e9 O* p4 o7 a; `7 L4 Q$ E: c! i  w
(3)Windows 集成身份验证
+ g. ]" m- [: z
" P- t* {- l$ E( ^1 h    Windows集成身份验证比基本身份验证安全,而且在用户具有Windows域帐户的内部网环境中能很好地发挥作用。在集成的Windows 身份验证中,浏览器尝试使用当前用户在域登录过程中使用的凭据,如果尝试失败,就会提示该用户输入用户名和密码。如果你使用集成的Windows身份验证,则用户的密码将不传送到服务器。如果该用户作为域用户登录到本地计算机,则他在访问此域中的网络计算机时不必再次进行身份验证。- b  H" x+ H, P. h" o
& d4 R/ u2 Y: i) R$ ]
(4)摘要身份验证
; P( @" p' c9 C  T) X, ?  X( s4 l5 n8 S- L; _
    摘要身份验证克服了基本身份验证的许多缺点。在使用摘要身份验证时,密码不是以明文形式发送的。另外,你可以通过代理服务器使用摘要身份验证。摘要身份验证使用一种挑战/响应机制(集成 Windows 身份验证使用的机制),其中的密码是以加密形式发送的。3 g8 B8 {+ ?3 l0 k" r

1 o4 K  M$ `9 b& h.NET Passport 身份验证& I! C6 \, {  z( U/ |
+ I5 n1 w1 A7 o3 K* z! }
Microsoft .NET Passport 是一项用户身份验证服务,它允许单一签入安全性,可使用户在访问启用了 .NET Passport 的 Web 站点和服务时更加安全。启用了 .NET Passport 的站点会依靠 .NET Passport 中央服务器来对用户进行身份验证。但是,该中心服务器不会授权或拒绝特定用户访问各个启用了 .NET Passport 的站点。" K$ q( F) O1 m  h5 u

* k4 g9 M6 x% B  q解决方法:2 J4 c: i6 `# V/ i1 a, i
& ]* R9 m( s# G
根据需要配置不同的身份认证(一般为匿名身份认证,这是大多数站点使用的认证方法)。认证选项在IIS的属性->安全性->身份验证和访问控制下配置。
/ z" ?( l! P" }7 P- ?/ `: p) J/ ^# {0 y* T5 P. W

) U, M3 S9 a/ G+ ]: }5 h6 P1 f    问题4:IP限制配置不当
( M1 P& k0 p3 E2 b4 X' s6 b/ D( V/ ]0 H+ E
症状举例:
+ S2 \1 h' a% a, S( A# {7 c) Q3 s3 x) M. X+ @" ^3 A4 I7 J& E

& p, V1 I3 c) c6 v. K    HTTP 错误 403.6 - 禁止访问:客户端的 IP 地址被拒绝。
1 f, \" z/ m+ g! o4 _- x: r3 i1 a" [7 a
原因分析:
" h& F* u9 w7 P) B# {, @- m9 W1 |* j, ]! U4 w7 Y( w. Q
! D9 w* z2 ]4 q( r9 p
    IIS提供了IP限制的机制,你可以通过配置来限制某些IP不能访问站点,或者限制仅仅只有某些IP可以访问站点,而如果客户端在被你阻止的IP范围内,或者不在你允许的范围内,则会出现错误提示。0 H/ ~) E5 V. d5 s$ R# A

0 F. X* ]$ ]* z5 I' k2 i$ C+ b解决方法:$ E$ Y& S$ h7 ^/ ^+ f" f

/ E$ x# p9 S6 `" h1 I- Z4 |) E进入IIS的属性->安全性->IP地址和域名限制。如果要限制某些IP地址的访问,需要选择授权访问,点添加选择不允许的IP地址。反之则可以只允许某些IP地址的访问。
) r$ w+ a6 L7 _/ w- K
* x' c; Y6 O9 e9 k- J# C7 K$ _4 h/ h问题5:IUSR账号被禁用4 z' f9 b! o8 A  U! [% H2 @
  k6 h: {2 T$ X- \% p3 r+ @  z
症状举例:
8 c) _# m0 z' E; S2 ^% l7 o+ z( r' U+ T9 J" D3 _7 F& p
+ D) p1 ^% R! H3 X4 c/ d+ h
    HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。
: p1 Y6 }, n2 p8 d6 ^3 B) V+ e. x( R
原因分析:' ~4 v& ^- [, X. c6 P! C6 p
8 W% Q7 D' v$ F9 d6 M, o6 u2 |- [% f
. c, ~3 q4 b+ h5 g  W" Q5 y
    由于用户匿名访问使用的账号是IUSR_机器名,因此如果此账号被禁用,将造成用户无法访问。4 D2 f; P" w) O+ s2 r
9 V  r4 f9 H- U) w5 [3 i( T( L
解决办法:
! n1 u& \7 O0 V" F' z* d+ H4 l4 a# L( v1 L( @- N( X4 d: M
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。+ {9 c0 l* _) N

: Y& a; `9 l1 k! {  Q2 A, G5 y问题6:NTFS权限设置不当- w9 H- r  x6 w: Z# w9 A4 Q
症状举例:
, Y3 j: l# O6 M4 ~# ~2 E3 f2 H* N! `9 H* Y" i

7 H3 m3 Q- R& V! C  F    HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。3 T0 q9 I7 {& C  g/ V
" h! S  e9 K0 v) a8 d: |
原因分析:
; z& ^. {' S2 R4 h# @7 c0 F/ y- |& B3 n& v; l5 |
$ ?4 S: P5 X  i, A4 [5 p% P
    Web客户端的用户隶属于user组,因此,如果该文件的NTFS权限不足(例如没有读权限),则会导致页面无法访问。9 h" [6 `9 d7 O. D0 k' s: E6 x! p

8 `7 L/ ]6 h7 e8 j& f解决办法:
' d4 t2 P! `% y* x8 G" t
/ p! }, x! \2 F8 p  ?
6 s8 K+ v$ a2 y, H) h    进入该文件夹的安全选项卡,配置user的权限,至少要给读权限。关于NTFS权限设   置这里不再馈述。
8 C9 b: j. }' D5 T& P9 y+ M0 }3 f2 r5 T
问题7:IWAM账号不同步
% T1 e! c* C- R: G; }1 Z2 z3 g
3 S  H+ m9 @/ P注意:这个问题经常出现!!!!! [4 i, A7 ~8 `2 w! c
症状举例:5 r6 c& O- b+ `# I0 ~4 `
" t6 s- ~9 }) S! n% Q2 U
- m4 S4 d8 B  o3 u. o' T
    HTTP 500 - 内部服务器错误
& ?! Y; h9 W; u5 T9 w; B# v. i* q6 W# R& o: L$ j( f
原因分析:
4 w. T' w* o0 b% j
4 m: e2 G8 Q4 u' v+ H2 x# C0 ^; w" A8 e7 v
    IWAM账号是安装IIS时系统自动建立的一个内置账号。IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。系统对IWAM账号的密码同步工作有时会失效,导致IWAM账号所用密码不统一。9 ?! q5 p& ]' }
1 B# s6 i' K7 m/ t" s
解决办法:
+ h- f; q$ K; `" v
( C5 x* i& O. F7 C& X+ F  @) x, P2 M. }, x6 e5 Q- E7 X  K
    如果存在AD,选择开始->程序->管理工具->Active Directory用户和计算机。为IWAM账号设置密码。运行c:\Inetpub\AdminScripts>adsutil SET w3svc/WAMUserPass +密码同步IIS metabase数据库密码运行cscript c:\inetpub\adminscripts\synciwam.vbs -v 同步IWAM账号在COM+应用程序中的密码
. U' o* O* i6 l6 m- N% z  n) Y/ Q1 M& ?# i2 R
问题8:MIME设置问题导致某些类型文件无法下载(以ISO为例)
2 l8 V- c0 G9 {8 x" P! X! s& o. [& f
症状举例:
% Z! W! L3 T) h9 v8 T
, B' H" U, e1 Y6 b    HTTP 错误 404 - 文件或目录未找到。& C/ W- E/ [( x+ ?' ?# `
5 I7 ^  q) t0 W! Q; l9 T
原因分析:4 X! k' `. C0 X' M" a0 ?
4 [4 F: ~( H$ ^( q; k
    IIS6.0取消了对某些MIME类型的支持,例如ISO,致使客户端下载出错。
" k+ r5 r- `4 Q0 `. f5 i9 d  W, M- D& m: D/ F! i7 P5 [
解决方法:
/ t) x( e! C) Y/ v+ M+ Q4 P# ~7 T2 O/ b$ q6 Y
    在IIS中属性->HTTP头->MIME类型->新建。在随后的对话框中,扩展名填入.ISO,MIME类型是application。
6 {% T4 k) |4 r/ c. [; ~, U7 V& l3 i
另外,防火墙阻止,ODBC配置错误,Web服务器性能限制,线程限制等因素也是造成IIS服务器无法访问的可能原因,这里就不再一一馈述了。0 r1 C( w4 S/ \3 }  a0 t. M
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-10-5 02:54 , Processed in 0.082260 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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