IIS7.5上的静态文件处理程序不提供脚本

Pro*_*ofK 124 windows asp.net iis iis-7.5

我刚刚尝试将我的第一个Web应用程序部署到Windows 7 Home Premium笔记本上的IIS中.创建应用程序后,我不得不更改为Classic App Pool,然后将该池设置为框架4.0.现在我收到以下错误:

HTTP错误404.17 - 未找到请求的内容似乎是脚本,静态文件处理程序不会提供.

请求的URL是http:// localhost:80/pvmms/default.aspx

我担心广泛的谷歌搜索没有给我提供任何明确或明确的信息,而且像往常一样,我转向了专家.

编辑: 我怀疑这是因为.aspx文件没有框架4.0处理程序映射.但是,aspnet_regi甚至为我的管理员用户提供了指示,并说我需要管理员权限才能运行它.

编辑#2: 我注册了所有的框架(2和4,32和64),现在都可以了.我通过手动添加脚本映射.aspx到aspnet_isapi和voila 找到了这个.我不明白为什么安装框架不会这样做,除非我的内存让我失望并且我在安装VS后才启用了IIS.

Rem*_*emy 118

现在可能为时已晚,但往往需要运行

aspnet_regiis.exe -i  
Run Code Online (Sandbox Code Playgroud)

安装asp.net后.也许我现在还会这样做.

  • .NET Framework附带了两个IIS注册工具; 一个用于标准系统,一个用于64位系统.用于64位系统的工具位于Windows文件夹内Microsoft.NET目录的Framework64目录中; 例如C:\ WINDOWS\Microsoft.NET\Framework64\v2.0.50727将包含IIS注册工具. (17认同)
  • 来自http://msdn.microsoft.com/en-us/library/k6h9cz8h.aspx:aspnet_regiis -i (4认同)
  • 如果您收到错误`该命令未被识别为内部或外部命令`.在Developer Command Prompt中运行它. (3认同)
  • 我必须对 Framework64 文件夹中的 2.0 框架执行此操作。就像@matthew Lock 所说的 (2认同)

Adi*_*Adi 63

除此之外,如果您需要WCF支持,则可能需要运行此命令:

c:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe -i
Run Code Online (Sandbox Code Playgroud)

将v3.0替换为您当前的框架版本.


J T*_*T R 55

尝试访问我编写的WCF服务时,我在IIS 8.5中遇到此错误.原来服务器没有打开WCF HTTP激活功能.选中框并点击向导,iisreset,开始工作.

Windows功能面板


小智 45

如果您使用的是iis 7.5.

只需转到IIS管理器,打开您的网站属性.

您将在那里看到"Handler Mappings"部分,只需转到该部分并搜索"staticFile".

最有可能是列表中的最后一个文件.

然后右键单击它并选择"还原为父级".

我第一次遇到这种情况时已经浪费了这么多时间,无论如何这将解决你的问题.

  • 正如Adi所回答:这个突击队只做了所有这些:c:\ Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe -i (2认同)

Cai*_*ete 24

我在使用ASP.NET 4.5的Windows Server 2012时出现此问题,您无法使用aspnet_regiis.exe,只需通过添加角色和功能向导安装ASP .NET 4.5:

在此输入图像描述

您可以在服务器管理器右上角的"管理"菜单中找到"添加角色和功能"菜单项

  • 您可以在服务器管理器右上角的菜单“管理”中找到菜单项“添加角色和功能” (2认同)

小智 15

我知道这是一个老问题,但我刚刚在我重建的Windows 8机器上安装了3.5应用程序,我之后仍然得到了这个aspnet_regiis -iru,结果是在应用程序开发功能中没有勾选到ASP.NET 3.5 (没有足够的声誉来发布图像).

  • @bicbmx图片,您可以在上传某个地方后共享链接,例如http://imgur.com/ (2认同)

小智 15

我通过启用解决了这个问题 WCF Services

Programs and Features > NET Framework 4.5 Services > WCF Services> HTTP Activation node

但你必须承认这个整个IIS设置配置/猜测/试用的人,看看/试试这个/尝试我们花费4或5天试图寻找解决方案的方法是一个完整的和UTTER JOKE.

原来,'IIS'是人类最快的自信心.


Jsi*_*inh 14

替代文字

我想应该看看这个选项


Kon*_*tov 12

默认情况下,为您的应用程序创建的应用程序池有可能是版本2.因此,尽管您在列表中看到.svc扩展名的处理程序但它不起作用并将其视为静态文件.您只需打开应用程序池属性并将其切换到版本4即可.


Sun*_*nil 8

再次注册asp.net ....将解决问题.
在此输入图像描述

转到Visual Studio命令提示符,
并将asp.net注册为windows\microsoft.net\Framework [.Net version num]\aspnet_regiis.exe -i

  • aspnet_regiis.exe -i响应"此版本的操作系统不支持此选项." 为什么IIS如此痛苦? (2认同)

小智 5

我在设置的Windows 8机器上遇到了同样的问题.我在vs2010之前安装了vs2012,它安装了.NET framework 4.5.我的应用程序池在4.0中运行.我确保我使用aspnet_regiis -i注册了4.0的aspnet.那仍然没有成功.然后我打开了Windows功能并注意到4.5添加了一个名为".NET Framework 4.5 Advanced Services"的集合.我启用了WCF服务节点及其子节点,然后我的svc端点正确运行.希望这有助于那些正在转向Windows 8的人们.