找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 15175|回复: 0

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

[复制链接]
发表于 2013-7-1 18:32:54 | 显示全部楼层 |阅读模式
很多朋友在用IIS6架网站的时候遇到不少问题,而这些问题有些在过去的IIS5里面就遇到过,有些是新出来的,做了很多次试验,结合以前的排错经验,做出了这个总结,希望能给大家帮上忙。
, G# P" B( h* G. l, {9 `" P& d6 o4 g% K; \3 l7 i( V1 f
问题1:未启用父路径0 _2 w2 `3 @  W2 G- X- x
症状举例: % K4 W1 n7 ]# C4 \

* ]& \/ ^$ l) t$ M    Server.MapPath() 错误 \'ASP 0175 : 80004005\') q# S5 U& I- v9 u. O- g
2 ]- M) s0 k  i' L' ?
    不允许的 Path 字符
  e) a9 B- T) [! m: o* D
7 r( y. ?% G: Y    /0709/dqyllhsub/news/OpenDatabase.asp,行 4
7 S4 d* L/ C/ T; `! j/ A/ i/ j
& t7 A6 p' f5 k* ]9 H* [    在 MapPath 的 Path 参数中不允许字符 \'..\'。; h2 \0 s# y8 N' I/ ]
9 k- G4 n+ Z. n  j% p$ d+ W6 f
( g' s6 O5 T& g4 O/ R: V2 @
原因分析:
8 y$ O& w. P4 G% i& x
: J  n, f/ e  Q& l  {  许多Web页面里要用到诸如../格式的语句(即回到上一层的页面,也就是父路径),而IIS6.0出于安全考虑,这一选项默认是关闭的。 如果是使用LEADBBS论坛的朋友就要注意了,DV的不会出现问题。
. y* w$ f7 r/ B8 a0 y" N5 a3 G3 R3 `' l1 _) s. W4 W, s- Q0 m
解决方法:
  P3 }) e  O2 t  w& G6 n
" _: e+ H* |2 N在IIS中属性->主目录->配置->选项中。把”启用父路径“前面打上勾。确认刷新。+ I( g* P2 K* I0 J  u5 \, e$ B  t

, P! M8 \9 I8 h1 @7 K问题2:ASP的Web扩展配置不当(同样适用于ASP.NET、CGI)
! H$ o) q& y3 [. n5 m* _7 `! w. U; V7 N* i1 ]" Q
症状举例:
$ G7 I+ A& j4 K2 v; k% P$ n6 ?& |, @; v  d
HTTP 错误 404 - 文件或目录未找到。- F1 r7 N- k: @1 g9 R
( \: [$ F% Z1 J: Z
原因分析:5 F! \5 p  s1 ^: c! C1 }' A2 H

& X& g% I% n9 s( h* o. q' g  l+ e, k6 T, `5 L
    在IIS6.0中新增了web程序扩展这一选项,你可以在其中对ASP、ASP.NET、CGI、IDC 等程序进行允许或禁止,默认情况下ASP等程序是禁止的。
3 }3 e: |( F7 r, F8 R  [0 I7 M  S* d' j2 r& N+ c
解决方法:7 H. |: w: j. L8 L' ~
: h$ V9 c# I# v9 ~
在IIS中的Web服务扩展中选中Active Server Pages,点击“允许”。! \. Z, o+ N3 ]0 S' v
  d8 A6 g/ l( t) ^3 H& q
问题3:身份认证配置不当( S8 W+ m' \: V
  X) P7 O5 u8 a9 e
症状举例:' L# ^' `: ]" g5 j: a4 P/ M# [( c
$ g$ F3 n) \" I! q1 Z; d4 ~
    HTTP 错误 401.2 - 未经授权:访问由于服务器配置被拒绝。8 I. Z# d3 G+ q, M

; {0 [/ a0 J* Y& b- N! Z8 X9 g原因分析:: h' n3 |7 y/ `( F
  O; B  ]& T: L* C; j
    IIS 支持以下几种 Web 身份验证方法:
" U1 b  d( W1 |$ O- G. o" ]0 e8 T7 r  r- }
(1)匿名身份验证! G& O4 }/ C) t2 `6 W& H
$ k' D, S5 W+ \& B# b) e
    IIS 创建 IUSR_计算机名称帐户(其中计算机名称是正在运行 IIS 的服务器的名称),用来在匿名用户请求 Web 内容时对他们进行身份验证。此帐户授予用户本地登录权限。你可以将匿名用户访问重置为使用任何有效的 Windows 帐户。
+ Y0 Z6 o% m6 U! B  z( `- |. I0 S+ \" i% D. T% n3 e
(2)基本身份验证. P% t& x9 H& |! J  d3 D
0 x) c0 [# a4 T5 A$ e" M  u
    使用基本身份验证可限制对 NTFS 格式 Web 服务器上的文件的访问。使用基本身份验证,用户必须输入凭据,而且访问是基于用户 ID 的。用户 ID 和密码都以明文形式在网络间进行发送。
5 S; |$ R7 M+ ?9 z, R& f
. Y5 p8 k! J: {* a4 o" C9 N(3)Windows 集成身份验证7 ^7 `1 X: l" e, x! U8 ^, B8 ?

4 v" z# H/ _+ |5 ~& R    Windows集成身份验证比基本身份验证安全,而且在用户具有Windows域帐户的内部网环境中能很好地发挥作用。在集成的Windows 身份验证中,浏览器尝试使用当前用户在域登录过程中使用的凭据,如果尝试失败,就会提示该用户输入用户名和密码。如果你使用集成的Windows身份验证,则用户的密码将不传送到服务器。如果该用户作为域用户登录到本地计算机,则他在访问此域中的网络计算机时不必再次进行身份验证。+ F3 p8 h9 s% t) W$ ~& W' p
7 l8 |' W! `2 z. g4 [
(4)摘要身份验证8 X  H, ]+ W; L0 F# p( S

. W/ l3 i9 j- ]  @+ m5 p7 C' M    摘要身份验证克服了基本身份验证的许多缺点。在使用摘要身份验证时,密码不是以明文形式发送的。另外,你可以通过代理服务器使用摘要身份验证。摘要身份验证使用一种挑战/响应机制(集成 Windows 身份验证使用的机制),其中的密码是以加密形式发送的。
1 K+ D- N1 S5 N+ X
0 y4 f4 ~6 b# d4 n1 }.NET Passport 身份验证
7 n5 F! _* N( `& s" F
3 j) P8 b- Z7 jMicrosoft .NET Passport 是一项用户身份验证服务,它允许单一签入安全性,可使用户在访问启用了 .NET Passport 的 Web 站点和服务时更加安全。启用了 .NET Passport 的站点会依靠 .NET Passport 中央服务器来对用户进行身份验证。但是,该中心服务器不会授权或拒绝特定用户访问各个启用了 .NET Passport 的站点。
+ E% ]* m7 C* W! I% v
; q$ M2 v4 c4 ]解决方法:
4 [: q$ [* h0 T
1 m; {1 v2 H, c- s% h0 s, ^. E根据需要配置不同的身份认证(一般为匿名身份认证,这是大多数站点使用的认证方法)。认证选项在IIS的属性->安全性->身份验证和访问控制下配置。" p& G7 v1 o6 U' W: V

3 n8 T/ \" T5 C  G: ^9 Z3 d% k9 n6 a
    问题4:IP限制配置不当/ |9 u8 ^6 J- Z- @% d  |" W
! L, K5 x, t& q0 l& U
症状举例:
2 R3 X  h3 e$ o% z6 y6 B: G" m, l( E

. _3 f$ ?* b& q$ Y9 p    HTTP 错误 403.6 - 禁止访问:客户端的 IP 地址被拒绝。0 u. S+ h4 X) F
" l: K, P8 d  c" W) }* O: o# G
原因分析:* v. F6 @$ l( u4 ^7 E( n

3 M" A( [. @2 U- X( F
, l+ K5 v  g# `+ h1 R    IIS提供了IP限制的机制,你可以通过配置来限制某些IP不能访问站点,或者限制仅仅只有某些IP可以访问站点,而如果客户端在被你阻止的IP范围内,或者不在你允许的范围内,则会出现错误提示。
/ R6 \$ k9 H- Z
) C* A: }# s% e! x解决方法:" |& Z: E5 L- ]# f5 n5 y
. M9 R) V3 Z( n( J* O/ `
进入IIS的属性->安全性->IP地址和域名限制。如果要限制某些IP地址的访问,需要选择授权访问,点添加选择不允许的IP地址。反之则可以只允许某些IP地址的访问。
' W5 l/ ~  i* k, o' J. ?  j; S$ y: t
4 R1 i3 }0 n3 d9 B8 j5 o# I) X+ m问题5:IUSR账号被禁用7 L7 a! ?7 D) ]

" Y  C* ]* Z3 `% k- O症状举例:
7 M# f0 j  ^5 i& X$ [9 d
" T0 Q- f; i* H! x8 J# }/ }- N; P
    HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。
2 B+ M$ v, b" \, k0 m. \+ d- Z  B- q( h
原因分析:$ e. I) i' I+ q
2 o# w1 X0 h$ T- H+ k- W. W8 d5 w. K
& u( ^, E$ `; C9 \- o0 w9 `. s
    由于用户匿名访问使用的账号是IUSR_机器名,因此如果此账号被禁用,将造成用户无法访问。
; _& @8 S" y4 g. P! x
* Q& `6 W4 c/ G$ J解决办法:0 a+ }! L# J/ U1 c- A- x3 {' r

. t5 m, w1 @- F! x; H5 I; q1 b控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。1 ]7 j- U: y9 X$ S0 M8 X

3 ^! f& D7 Y# F$ ^$ C! `问题6:NTFS权限设置不当
( b1 R( p" D( S症状举例:
% R* v3 i% l7 ?0 T! l! ]
" q$ w* l# y6 P* a1 V0 _" g
( p8 X9 o6 S/ L  @. l4 X# l9 r    HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。5 [: E$ `5 s& ~0 s: t- O5 W4 ]( X; Q
' J. z( k: f5 b; J
原因分析:$ l3 X  K, d4 V$ Q& o( b

& l  K, U. J- K4 S4 A( o  Y
4 ^( Y  p1 N0 U4 s- u    Web客户端的用户隶属于user组,因此,如果该文件的NTFS权限不足(例如没有读权限),则会导致页面无法访问。
+ U/ n8 w3 e% M7 X  X; R! Z0 y# \) T0 q+ ]. j: A6 f
解决办法:9 l# t& u( W" G+ h" b

2 _5 d3 [9 ~4 M3 t. O2 f' W. f8 w  A( h8 H- O$ W0 L0 c( C. O
    进入该文件夹的安全选项卡,配置user的权限,至少要给读权限。关于NTFS权限设   置这里不再馈述。. w- @; J! ~8 H$ Y- G: V
, C7 B# F7 i9 u3 E( m- U3 U# w
问题7:IWAM账号不同步
2 z9 @9 S8 ^8 U5 c5 _: o
% l$ R% b+ c, O6 M0 P6 P注意:这个问题经常出现!!!!, j( U5 Z) I; e6 d$ }( e% e
症状举例:& H) c, n2 j5 N9 i6 X

( P8 P, [# z9 @5 x. @2 F; J8 [1 K" u. P
    HTTP 500 - 内部服务器错误
' u0 g# X- }5 X% d  u
/ K; z. Y+ C+ F原因分析:5 V% T- Z; t0 l1 B& H+ J) H

0 h( J7 G: r3 T* Y: b5 m( H
! [  _2 s/ q) U& R$ F    IWAM账号是安装IIS时系统自动建立的一个内置账号。IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。系统对IWAM账号的密码同步工作有时会失效,导致IWAM账号所用密码不统一。
8 [3 F( I( G0 d+ z0 J8 q4 T6 V, I+ H# ?6 Y+ J3 _
解决办法:4 V. g% m$ P( E# W! I

& L6 C# L9 O7 [7 p; S; L' Z/ n0 {9 e! f) o
    如果存在AD,选择开始->程序->管理工具->Active Directory用户和计算机。为IWAM账号设置密码。运行c:\Inetpub\AdminScripts>adsutil SET w3svc/WAMUserPass +密码同步IIS metabase数据库密码运行cscript c:\inetpub\adminscripts\synciwam.vbs -v 同步IWAM账号在COM+应用程序中的密码! ^+ i3 @; e2 ?  L
# ^: e" }# z, \
问题8:MIME设置问题导致某些类型文件无法下载(以ISO为例)
3 I6 ~$ h: `/ x& \/ n  i, o0 d$ c: J# b) q9 _: [
症状举例:) n+ E' @8 P" t1 j' ~- O

0 f! ?) X% D6 p    HTTP 错误 404 - 文件或目录未找到。4 Z5 {% r6 p/ ]" D

) U* W8 L; Q* n原因分析:
/ c" h6 Y; @! b' }  `: o" f: n; O3 N$ x! P  m: s6 w9 T1 s
    IIS6.0取消了对某些MIME类型的支持,例如ISO,致使客户端下载出错。# W0 A' F( g4 X# f
* l+ @( W4 {! p9 R) l
解决方法:
" m! R+ T6 j6 q/ o+ a
( m6 ]5 S8 Z# Z4 W" ~- n9 T$ g    在IIS中属性->HTTP头->MIME类型->新建。在随后的对话框中,扩展名填入.ISO,MIME类型是application。
; [# c% V- w/ K5 D# T5 I" X3 j% s, f2 x" v: Z; F6 ]' w5 F( ~
另外,防火墙阻止,ODBC配置错误,Web服务器性能限制,线程限制等因素也是造成IIS服务器无法访问的可能原因,这里就不再一一馈述了。$ H1 C  q5 D" Z6 r* x- ~" m' d2 Z
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-10-23 16:41 , Processed in 0.399930 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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