请求的内容似乎是脚本,静态文件处理程序不会提供.IIS 7.5

时间:2013-03-25 18:52:08

标签: asp.net iis-7.5 publishing

我知道这个论坛上有相关的帖子和​​其他资源,但我一直坚持这个并且无法继续。问题是我已经用vs2010完成了一个网站,当我将它发布到ftp服务器并导航到url地址我得到了这个错误。这里我做过的事情

- 我已启用IIS服务和静态内容

- 我已经在处理程序映射

下恢复为staticFile的父级

- 我已经在命令提示符(regiis.exe事件)中再次注册了asp.net

- 在IIS管理器中,我已经在网站下添加了我的网站地址,停止了默认网站并启动了我的网站。

- 我已将我的网站添加到classic.NET AppPool(集成,和v4.0)

- 我已启用默认浏览..

- 我已经完成了通常涵盖的所有建议..

这是我的web.config

<configuration>
<system.webServer>
<directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension" />
<defaultDocument>
  <files>
    <add value="AnaSayfa.aspx" />
  </files>
</defaultDocument>
</system.webServer>
<system.web>
<compilation debug="true" targetFramework="4.0" />

</system.web>
 </configuration>
我在哪里做错了?我已经度过了2天,无法前进一寸。如果这个问题解决了,我会泪流满面。任何帮助都会非常,极大,极大!赞赏,将是我的英雄,主人(:谢谢

8 个答案:

答案 0 :(得分:20)

转到命令提示符并安装/修复ASP.NET

C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i

转到 IIS =&gt;选择服务器名称(系统名称)

转到 ISAPI和CGI限制

允许不允许限制。

答案 1 :(得分:6)

当我将应用程序池的.Net框架版本更改为我的应用程序的.net框架版本时,我得到了这个工作。 我的应用程序的框架版本是4.0,但应用程序池的设置默认为2.0。我不得不把它改成4.0,然后它工作正常。

答案 2 :(得分:1)

@regeme - 我在尝试运行自己的网站时遇到了类似的问题,经过大量挖掘后我终于解决了。在我的情况下,它与尝试加载的* .json文件有关,并且没有为它初始化规则。如果你仔细观察你的错误,它应该让你知道IIS没有加载它。

在查看网络检查员的网络标签后,我能够看到哪些项目返回404,他们都是 * .json

我假设因为你的错误正在返回“内容似乎是脚本而不会被......提供服务”这是相同的情况。

我的决议:

A)你可能已经这样做了,因为它会引发另一个错误,我只是覆盖我们的基地。

  1. 转到IIS HTTP响应标头
  2. 创建一个mime-type“ .json ”“ application / json
  3. B) **请注意

    1. 转到处理程序映射
    2. 请求路径设置为“* .json”
    3. 可执行文件:改为“C:\ Windows \ System32 \ inetsrv \ asp.dll”
    4. C)您可能希望再次重新启动服务,只是为了安全,可以在IIS面板或cmd提示符下完成。

      1. Windows键 + r
      2. 键入: cmd 并点击 ctrl + 转移 + 输入
      3. 输入: iisreset 并点击输入
      4. *注意:这可能会让您省去很多头疼,在我的情况下我安装了64位dll的asp.dll而不是32位版本64位版本的文件夹位于C:\ Windows \ SysWOW64 \ INETSRV \ ASP.DLL

        重要这些文件位置在Windows 8中,我的理解在Windows 7中是相同的,但这可能不适用于您的操作系统仔细检查。

        最后,如果您错过了asp.dll,这只是因为您缺少Windows功能。只需添加/删除程序(程序和功能)

        1. 打开或关闭Windows功能
        2. 下载Internet信息服务
        3. 下载万维网服务
        4. 检查应用程序开发功能,确保它不仅仅是部分检查,而且所有子项都已安装

答案 3 :(得分:1)

在Windows 2012和IIS 8.5上,aspnet_regiis不再有效。

相反,在服务器管理器

中添加aspnet-4.5角色

打开服务器管理器 在左侧列中选择IIS 滚动右侧窗口,直到看到“角色和功能” 任务选择添加角色 在“服务器角色”下打开“Web服务器(iis) 打开“Web服务器” 打开“应用程序开发” 选择“ASP.NET 4.5”(“asp.net 4.5扩展性”不会这样做)

答案 4 :(得分:1)

+1 @Dablue,IIS 8.5不再支持aspnet_regiis命令。对我来说,通过安装&#34; Asp.Net 3.5&#34;解决了这个问题。或者&#34; Asp.Net 4.5&#34;下 Web服务器&gt;应用程序开发。

enter image description here

答案 5 :(得分:0)

在Web服务器上托管我们的MVC应用程序时遇到了同样的问题。除WCF服务外,所有应用程序都运行良好。

当我们在Windows Server Manager中为.NET Framework 4.5 WCF服务添加服务器角色时,它已得到解决。

访问http://community.bamboosolutions.com/blogs/bambooteamblog/archive/2013/02/08/how-to-enable-and-use-net-framework-3-5-and-4-5-in-windows-server-2012.aspx

答案 6 :(得分:0)

对我来说,通过右键单击虚拟目录 - >转换为应用程序

来解决问题

答案 7 :(得分:0)

看看这个,在我的情况下,这解决了问题

https://support.microsoft.com/en-us/kb/2019689

这可能对您有所帮助

在这种情况下,如果从站点请求的* .aspx资源在未在经典模式下运行的应用程序池中处理,不是32位,或者未运行2.0版本,则会返回404.17错误.NET Framework。为了在此示例中正确提供资源,必须满足所有3个前提条件。具体来说,托管此资源的应用程序池必须配置为经典模式,它需要配置为使用2.0版本的.NET Framework,并且需要为32位应用程序设置。