介绍
自己辛辛苦苦建起来的网站无法访问,的确令人沮丧。不过别担心,本文将会指导你找到故障的根源。
操作失败的可能因素
大多数操作失败的原因不外乎下列几种:网络连接故障,防火墙设置不当,IIS 权限问题。一般而言,网络故障容易发现。举例来说, 如果你的网络不能传输任何数据,那么问题极有可能出在网络硬件上。如果本地网络正常,从外面却不能访问你的网站,那么就该查查端口80是不是被防火墙禁止了,只要作个简单的端口扫描(port sniffing)就明确了。
我打算根据人们对本文的回应情况重新撰写一篇完整的故障诊断指南。然而本文仅仅讨论由于权限问题引起的 IIS 的操作失败。
建立安全日志
IIS 连接故障的诊断,第一步是对故障的现象有个清楚的了解。此时经常需要查看你的事件日志。然而,你得先做一些设置,否则事件日志里的信息对你毫无用处。
既然这里讨论的是与权限有关的 IIS 操作故障,那么我们势必要用到安全日志。因此先得重新配置安全日志:告诉 IIS 我们要记录什么,然后停止 IIS ,再清空安全日志,最后重新启动 IIS 服务。也许你会奇怪:为什么要停止 IIS 服务?因为 IIS 有时把安全日志记录写入 cache (缓存)。如果不重新启动 IIS ,那么当你清空日志以后,cache 中的记录马上又会被写入。很明显,这种信息将被误认为当前记录而将你引入歧途。因此,我强烈推荐停止并重新启动 IIS 服务。
现在开始设置 IIS。首先,进入 Program | Administrative Tools | Computer Management。然后,找到Services and Applications | Internet Information Services。展开 Internet Information Services 项显示网站。在有问题的网站名称上点右键,选取 Properties 打开属性页,现在,点属性页中的 Web Site 项,选中 Enable Logging 项以开启日志。此时,你会看到一个列表让你选择日志文件格式。我推荐使用 W3C Extended 格式,点 Properties 按钮,选 Extended Logging Properties (扩展日志属性页)。
默认情况下,属性页中的 General Properties (一般属性) 已被选中。在这里可以设定隔多久产生新的记录文件,这个值的大小无所谓,自己选吧。扩展属性页比较重要。在这里你可以选择哪些信息需要保存到日志里。你可以自由选择,但是至少应该包括如下几项:
Date (日期),Time (时间),Client IP Address (客户 IP 地址),User Name (用户名),Method (方法),HTTP Status (HTTP 状态)和 Win32 Status (Win32 状态)。
选择完毕以后,点 OK ,再点 OK ,就可以回到计算机管理界面了。
既然已经配置好了网站记录选项,我们就来清空cache (高速缓存) 和日志记录吧。第一步:停止所有的 IIS 服务。方法是:进入 DOS 命令提示方式(Program | Accessories | Command Prompt),在 DOS 提示窗口中键入命令:
NET STOP IISADMIN/Y
只需这一个命令就能停止所有的 IIS 服务。完成后,离开 DOS 提示窗口,进入 Programs | Administrative tools | Event Viewer (事件查看器)。在 Security Log (安全日志) 上点右键,选 Clear All Events (清除所有事件)。好,现在已经清空了 cache 和安全日志,可以重起 IIS 了。回到 DOS 提示窗口,键入4行命令:
NET START W3SVC
NET START MSFTPSVC
NET START NNTPSVC
NET START SMTPSVC
注意了,这些命令不是对每个人都需要的。例如,举例来说,如果你没有运行 FTP 服务,那么你就不必键入与 FTP 有关的命令(译者注:W3SVC - WEB ,MSFTPSVC - FTP,NNTPSVC - NNTP,SMTPSVC - SMTP)。
检查安全日志
现在你已经设置好了安全日志,可以创建日志项了。试着访问有故障的网站。我建议,如果可能的话,尝试从公司内部和外部,从许多人的机器上访问它。因为这样可以得到许多有用的日志记录,通过对它们的比较分析可以大大帮助找出问题的根源。也许,你会发现只有从公司内部能够访问,而从外部不行;或者,只有授权用户能够访问,而匿名用户不行。等等。
当你整理安全日志项目时,我推荐你首先看看错误代码为 401 和 403 的日志项目。代码为 401 和 403 的错误有很多。但是一旦有了确切的代码,你就得到了极为重要的线索。下面列出许多 401 和 403 错误及其含义:
401;1 非法操作:登录失败
401;2 非法操作:服务器设置错误导致的登录失败
401;3 非法操作:使用控制列表 (ACL) 项目
401;4 非法操作:IIS 过滤器阻止存取
401;5 非法操作:ISAPI 或 CGI 应用程序
403;1 操作禁止:没有执行权限
403;2 操作禁止:没有读取权限
403;3 操作禁止:没有写入权限
403;4 操作禁止:要求 SSL
403;5 操作禁止:要求 128位 SSL
403;6 操作禁止:IP 地址被拒绝
403;7 操作禁止:要求客户证书
403;8 操作禁止:拒绝存取站点
403;9 操作禁止:当前连接的用户太多
403;10 操作禁止:设置错误
403;11 操作禁止:密码不正确
403;12 操作禁止:要求有效的客户证书
403;13 操作禁止:客户证书已作废
403;14 操作禁止:拒绝列目录
403;15 操作禁止:超过许可的客户数目
403;16 操作禁止:客户存取证书非法或尚未认证
403;17 操作禁止:客户存取证书过期或尚未升效
试试看,从你的安全日志中找到 401 和 403 错误,跟上述列表对照一下,或许能有帮助呢?如果还是没找到原因,请看下一节。那里将讨论特殊的权限问题和解决办法。
连接失败的其他可能因素
如果问题还是没有解决,那么就要考虑 IIS 的提示信息是否正确了。
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |