当我请求具有映射到ASP.NET ISAPI扩展的扩展名的URL时,IIS6表现得很奇怪

时间:2011-03-30 13:39:13

标签: asp.net windows web-services iis iis-6

我尝试在IIS6中部署ASP.NET应用程序。我创建了一个虚拟目录MyApp,将其映射到硬盘驱动器上的文件夹,将所有内容从我的应用程序复制到该文件夹​​。

现在,当我请求http://host/MyApp/时,我收到HTTP 403,并且该请求记录在IIS日志中。当我请求http://host/MyApp/default.aspc(没有这样的文件)时,我得到了HTTP 404,并且还记录了该请求。

但是当我请求http://host/MyApp/default.aspx(该文件存在于虚拟目录映射到的文件夹中)时,Internet Explorer只是说“无法显示网页”,则不会记录该请求。当我使用Fiddler跟踪请求时,它在客户端显示空回复和HTTP代码0.aspx扩展名当然映射到ASP.NET ISAPI扩展名。

ASP.NET 2.0已安装到IIS中。当我运行aspnet_regiis -lk时,它会产生以下输出:

W3SVC/  2.0.50727.0
W3SVC/1/ROOT/   2.0.50727.0
W3SVC/2/Root/   2.0.50727.0 

怎么了?当我请求映射到ASP.NET ISAPI的文件时,为什么IIS6表现得如此奇怪?如何解决这个问题?

3 个答案:

答案 0 :(得分:3)

这种特殊的奇怪现象通常是由于“Web服务扩展”

下没有启用ASP.NET引起的

步骤:

  1. 控制面板>管理工具> IIS管理器
  2. 展开树中的计算机节点
  3. 点击“网络服务扩展”
  4. 右键单击右侧列表中相应的ASP.NET版本,然后选择“允许”
  5. 希望这是你遇到的问题!

答案 1 :(得分:1)

如果这些看起来很明显,我道歉:

您是否检查过以确保ASP.NET扩展确实映射到虚拟目录本身的ASP.NET ISAPI扩展:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll

是否安装了正确的ASP.NET版本(如果有的话)?

此外,此文件夹是虚拟目录(图标是带有地球的文件夹)还是应用程序(图标是齿轮)。

如果是虚拟目录,则需要确保您的/bin文件夹和web.config位于网站根目录中。

答案 2 :(得分:1)

尽管Google搜索显示典型的原因是ASP.NET在我的特定情况下配置错误,但原因是Windows Sharepoint Services 3安装在同一台计算机上。安装完成后,ASP.NET应用程序似乎不再有效。重新安装.NET和IIS没有帮助。