我想知道是否有人尝试在 32 位 Windows Server 2003 企业版中运行 ASPX 页面?我有几十个使用 2003 Standard 的生产网络服务器,它们从来没有这个问题。这是我得到的:
2003 EE、IIS 和 ASP.NET 的新实例安装在两台硬件不同的测试服务器上,所有东西都打了补丁。
简单的“hello world”html 页面“ http://127.0.0.1/Test.htm ”在所有浏览器中都能正常工作。
当我将此页面重命名为“ http://127.0.0.1/Test.aspx ”时,Firefox 立即给出“连接中断”错误。事件日志或 IIS 日志中没有其他信息。其他浏览器也无法显示页面(IE说“无法显示网页”)
我已经在默认网站和全新网站上对此进行了测试,还尝试在 ASP.NET 1.1 和 ASP.NET 2.0 之间切换 - 仍然出现相同的错误。我的登录名是本地管理员,我尝试为“NETWORK SERVICE”、“ASPNET”和“IUSER_*”帐户授予管理员权限,但没有成功。此外,所有基本技巧,如重新启动、禁用防火墙、重新安装 .NET 和 IIS 都不起作用。
在安装企业版操作系统后,我在这两个服务器上观察到了另外两个线索: 1. 最初,当我尝试加载静态 Html 页面或图像时,IIS 给出了安全异常。我必须使用组件服务来允许对 IIS 管理服务进行 DCOM 激活,然后静态文件开始工作。2. 当我尝试操作一些Web Service Extensions(即禁止CGI Extensions)时,MMC 崩溃并显示“MMC has detected an error in a snap-in. 建议您关闭并重新启动MMC”。
我将不胜感激有关解决此问题的任何提示!
PS。我尝试部署企业版的原因是它支持超过 4GB 的 RAM,而且我的一些应用程序还没有准备好在 64 位操作系统上运行......
当 asp.net 开始表现得很时髦时,有很多事情需要检查。检查以确保允许扩展是其中之一,尽管您通常最终会得到 404 not found 错误而不是其他类型的故障(这是一个故意伪造的错误,旨在避免将信息泄露给潜在的黑客)。
但是,大多数故障排除最终归结为重新安装 .NET Framework,然后运行 aspnet_regiis.exe 以重置所有内容。2k3EE 和 2k3SE 上的 IIS 之间应该没有任何区别。
另外,请记住 IIS 不支持 PAE,因此即使您的机器上确实有大量 RAM,在任何给定的应用程序池中利用它仍然可能会遇到问题。
在安装适当版本的 .NET 后安装 IIS 时,我也遇到过类似的情况。基本上,当 .NET 安装时,它没有检测到 IIS,因此没有安装适当的库来让 ASP.NET 工作。
如果您从“添加/删除程序”窗口重新安装 .NET,这应该可以解决您的问题。
在过去,我遇到了通过运行“aspnet_regiis.exe -i”神秘地消失的问题
它位于 Windows\Microsoft.NET\Framework\ [Version]\ 目录中。
好的,以上答案都不起作用,所以我最终使用了 Microsoft 支持来解决这个问题。看起来,这个问题不仅仅是 Windows Server 2003 的企业版,而且在微软是众所周知的。它归结为不兼容的 asp.dll 版本,当您使用常规 ISO 映像时,它会以某种方式安装。以下是一些详细信息:http: //support.microsoft.com/ ?id=907275 。
就我而言,重新安装 SP2 解决了这个问题。
http://www.visualwin.com/ASP.NET/
具体来说,检查 IIS 中的 Web 服务扩展。