【问题标题】:ASP.NET MVC3 IIS can't get stylesheets to loadASP.NET MVC3 IIS 无法加载样式表
【发布时间】:2011-11-12 04:16:48
【问题描述】:

在运行默认的“文件/新建”MVC3 网站时,我无法让本地 II7 加载样式表。当我使用 Visual Studio 运行该站点时,一切正常。我创建了一个指向 MVC 网站根文件夹的 IIS7 网站。该站点出现,但没有加载样式表。我的应用程序池设置为 .NET 4 和集成模式。

本主题中描述了相同的问题,但修复对我没有帮助(我已经检查了“提供静态内容”设置)。

ASP.Net MVC & Local IIS Issue Loading Stylesheets

感谢任何方向!

【问题讨论】:

标签: asp.net-mvc iis-7


【解决方案1】:

要检查的另一件事是在 Windows 功能中启用了静态内容 - 这让我每次都感到困惑。在 Windows 7 中:

  1. 打开控制面板
  2. 选择程序 > 程序和功能 > 打开或关闭 Windows 功能
  3. 扩展 Internet 信息服务 > 万维网服务 > 通用 HTTP 功能
  4. 检查“静态内容”
  5. 单击“确定”并等待重试。

【讨论】:

    【解决方案2】:

    我也遇到了这个问题,这里(或我能找到的任何其他地方)的解决方案都没有帮助。

    解决方案

    原来我的 CSS 文件是以 zip 格式从外部源下载的。使用 Windows 资源管理器将文件从 zip 文件复制并粘贴到我的 IIS 目录中。如果您在进行复制操作之前先解压缩文件,则不会弄乱权限,您可以在 IIS 中查看它们。

    【讨论】:

      【解决方案3】:

      通过在 IIS 中启用匿名身份验证,然后右键单击该节点并选择“编辑”并选择“应用程序池标识”来解决此问题。现在一切都正确加载。使用提琴手时,我注意到样式表/js 文件出现 401 错误,所以我知道我遇到了安全问题。

      【讨论】:

      • 那么,在Visual Studio自带的IIS Express中该如何修复呢?
      【解决方案4】:

      在您的布局页面中有如下样式表:

      <link href="@Url.Content("~/folder/style.css")" type="text/css" rel="stylesheet" />

      这应该有助于使其相对于您的应用程序根 @Url(Content("~/ part.

      【讨论】:

        【解决方案5】:

        正如@Mike 所说,我几乎敢打赌,问题在于,当您在本地运行时,CSS 文件的路径与在服务器上运行时不同。

        您的 CSS 文件位于何处?

        例如,如果您的 IIS 根文件夹是 c:\inetpub\wwwroot...是您的 CSS 文件在

        • c:\inetpub\wwwroot\somefolder\content\style.css 或下
        • c:\inetpub\wwwroot\content\style.css

        ?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-22
          • 2016-12-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-06-03
          • 1970-01-01
          相关资源
          最近更新 更多