【问题标题】:IIS error 500.19 for static files in Azure projectAzure 项目中静态文件的 IIS 错误 500.19
【发布时间】:2012-08-13 17:07:22
【问题描述】:

我有一个带有单个 webrole 的 Azure 项目,我试图在升级到 Windows 8 和 Visual Studio 2012 后正常运行。

问题在于任何静态内容,它返回 HTTP 500 内部服务器错误,并带有以下文本:“页面无法显示,因为发生了内部服务器错误。”任何静态内容(图像和 javascript)都会出现此错误,而动态内容可以正常提供(所有控制器操作都可以正常工作)。

我们无法让 IIS 显示详细的错误消息。我们可以找到该错误的唯一参考是在访问日志中,该日志将其显示为 500 子类型 19 错误。

我们尝试在 IIS 和 IISExpress 之间切换,出现同样的错误。我们已经尝试将所有“显示详细错误消息”选项添加到我们的 web.config 和 IIS 管理器。 HTTP 和 HTTPS 端点都会发生同样的错误。

我的下一步应该是什么?

【问题讨论】:

  • 我刚刚快速搜索了这个特定的错误并找到了这篇博文:blogs.iis.net/webtopics/archive/2010/03/08/…。希望这能让您了解为什么会发生这种情况。
  • @GauravMantri 我们看不到比上面的错误文本更详细的错误消息,访问日志将其列为 500.19。我无法诊断该页面上的哪些错误适用。

标签: iis azure


【解决方案1】:

罪魁祸首已经被发现。通过比较默认的web.config 和我们的web.config,我们在web.config 中发现了这一点:

<system.webServer>
  <staticContent>
    <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
  </staticContent>
</system.webServer>

IIS8 支持内置的 WOFF,而 IIS 7 不支持。只需将这条线移动到转换中即可解决问题。

【讨论】:

    【解决方案2】:

    我很久以前就遇到过这个问题,Vegard Larsen 的回答非常有效。但是,我已经升级到 osFamily 3 (Windows Server 2012) 并发现在部署到 Azure 时我再次收到子类型 19 的 500 错误。解决方法是在转换中使用以下内容。

    <system.webServer>
      <staticContent xdt:Transform="Insert">
        <remove fileExtension=".woff" />
        <mimeMap fileExtension=".woff" mimeType="application/x-woff" />
      </staticContent>
    </system.webServer>
    

    重要的部分是删除任何现有的 .woff 配置。这样您就可以确保它适用于任何 IIS 平台/配置。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-26
    • 1970-01-01
    • 2018-03-04
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多