IIS 6:系统找不到指定的文件

IIS 6:系统找不到指定的文件

我有一台 Win 2003 / IIS 6 Web 服务器,上面配置了数千个站点。两个站点是独立的,其余站点的配置大致相同。

目录中有一些通用代码,然后每个站点都有自己的经典 ASP 代码,其中包含来自通用代码的文件。这是一种非常低效的设置,因为对站点特定代码的任何更改都需要在每个站点上单独更改。这也是对磁盘空间的浪费。

无论如何,当我访问这些网站中的任何一个时(除了上述两个奇怪的网站),浏览器窗口中都会出现“系统找不到指定的文件”。无论在什么位置都会发生这种情况。

事件查看器中没有任何有趣的内容。进程监视器没有显示任何无法打开文件的信息。我甚至在元数据库中查找了对文件和目录的引用,并修复了实际上缺失的几个。

我无法就这些网站的具体情况寻求帮助,但我可以问的是,从哪里开始我可以找到问题?Apache 具有良好的错误日志记录功能,而 IIS 似乎满足于发送无效的 HTTP 响应并且不提供任何有用的信息。

答案1

具体错误是什么?是 404 吗?此外,任何经典 ASP 页面都可以正常工作吗?听起来好像<!--#inclue-->ASP 代码中的某个指令的路径有问题。

答案2

尝试“中断”测试。暂时关闭网站,看看错误消息是否发生变化。有可能是其他网站捕获了绑定,而不是您想要的那个。

另一个让我一直困扰的问题是,如果我创建一个新的文本文件,将其重命名为 default.htm,但 Windows 默认设置下它实际上是 default.htm.txt。请确保显示已知扩展名。

在 IIS 日志中,有一个状态代码(您的情况是 404),但下一个字段是子状态。这对于 404 错误非常有用,因为有很多子状态代码不是页面未找到错误。

使用 Process Monitor 也是正确的。它在磁盘上寻找什么路径,你确定文件在同一路径中吗?Process Monitor 是一种很好的方法,可以准确地了解磁盘上正在发生的事情,并且经常会发现它总是出现的稍微错误的设置。

答案3

您是否已启用 Classic ASP 作为 Web 服务扩展?要启用它,请转到 IIS 管理器中的 Web 服务扩展列表,并将 ASP Web 服务扩展的状态配置为允许。

另外,您是否将 ASP 安装为 Windows 组件?

另一件要检查的事情是,你有没有URL 扫描安装了吗?它会阻止 asp 吗?

相关内容