为 IIS Express 在 web.config 中添加 MIME 映射

我需要为.woff 文件扩展名添加一个新的 MIME 映射到 IISExpress。

如果我在 IIS Express 的“ applicationhost.config”中添加以下代码片段,它就可以正常工作:

<staticContent lockAttributes="isDocFooterFileName">
<mimeMap fileExtension=".woff" mimeType="font/x-woff" />
...

但实际上我想把它添加到我的“ web.config”中,这样不是每个开发人员都需要在本地更改他们的“ applicationhost.config”。

因此,我再次从“ applicationhost.config”文件中删除它,并将以下代码片段添加到项目的“ web.config”中:

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

不幸的是,它似乎不是这样工作的,因为当我试图访问一个。Woff 文件,最后出现一个 HTTP 404.3错误。

我做错了什么?

146414 次浏览

我知道这是个老问题,但是..。

我只是注意到我的 IISExpress 实例没有提供 woff 文件,所以我们没有搜索(找到这个) ,然后发现:

Http://www.tomasmcguinness.com/2011/07/06/adding-support-for-svg-to-iis-express/

我想我的安装支持 SVG,因为我还没有遇到这个问题。但对于 woff 来说,这些说明可以进行微不足道的修改:

  • 打开具有管理员特权的控制台应用。
  • 导航到 IISExpress 目录。该目录位于 Program Files 或 Program Files (x86)下
  • 运行命令:

    Appcmd set config/section: staticContent/+ [ fileExtension = ‘ woff’,imeType = ‘ application/x-woff’]

解决了我的问题,而且我也不必去搞一些糟糕的配置(比如我必须添加对 PUTDELETE动词的支持)。耶!

把它放到“ web.config”中就可以了。问题是我把 MIME 类型弄错了。它必须是 application/font-woff,而不是 font/x-wofffont/x-font-woff:

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

另请参阅关于 MIME 类型的答案: https://stackoverflow.com/a/5142316/135441

2013年4月10日更新

现在推荐使用 Spec,MIME 类型正式为: application/font-woff

感谢这篇文章,我在 asp.net mvc 项目中使用了八字胡模板 我使用了以下方法,它对我很有效。

<system.webServer>
<staticContent>
<mimeMap fileExtension=".mustache" mimeType="text/html"/>
</staticContent>
</system.WebServer>

如果有人遇到这样的错误 错误: 无法添加具有唯一键属性的类型为“ mimeMap”的重复集合条目 和/或其他脚本在执行此修复时停止工作,可能有助于首先像下面这样删除它:

<staticContent>
<remove fileExtension=".woff" />
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
</staticContent>

至少这解决了我的问题

我没有使用 IISExpress,而是针对我的本地完整 IIS7进行开发。

所以如果还有其他人想这么做,我必须加上 woff 的哑剧类型 通过 IIS 管理器

默剧类型 > > 点击右边的添加链接,然后输入 分机: 。沃夫 MIME 类型: < strong > application/font-woff

要解决这个问题,双击“ MIME 类型”配置选项,同时在左侧面板中选择 IIS 根节点,并在右侧的 Actions 面板中单击“ Add...”链接。这将打开下面的对话框。加。Woff 文件扩展名,并指定“ application/x-font-woff”作为相应的 MIME 类型:

enter image description here

使用 application/x-font-woff2跟随 woff2

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

我在使用 ASP.NET 5.0/MVC 6应用程序服务静态二进制文件类型或浏览虚拟目录时遇到了问题。现在看起来这是在启动时在 Configure ()中完成的。请参阅 http://docs.asp.net/en/latest/fundamentals/static-files.html了解快速入门。