Добавьте отображение MIME в web.config для IIS Express - PullRequest
174 голосов
/ 26 января 2012

Мне нужно добавить новое сопоставление MIME для расширений файлов .woff в IIS Express.

Если я добавлю следующий фрагмент в «applicationhost.config» IIS Express, он будет работать нормально:

<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.

Что я делаю не так?

Ответы [ 8 ]

308 голосов
/ 22 марта 2012

Помещение в "web.config" работает нормально.Проблема была в том, что я неправильно понял тип MIME.Вместо font/x-woff или font/x-font-woff должно быть application/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

Обновление 4/10 / 2013

Спецификация теперь является рекомендацией, а тип MIME официально: application/font-woff

57 голосов
/ 28 июня 2013

Если кто-то сталкивается с этим с ошибками, такими как Ошибка: не удается добавить дубликат записи коллекции типа «mimeMap» с уникальным ключом атрибута и / или другие сценарии перестают работать при выполнении этого исправления, это может помочь сначала удалить его следующим образом:*

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

По крайней мере, это решило мою проблему

17 голосов
/ 21 января 2016
<system.webServer>
     <staticContent>
      <remove fileExtension=".woff"/>
      <mimeMap fileExtension=".woff" mimeType="application/font-woff" />
      <mimeMap fileExtension=".woff2" mimeType="font/woff2" />
    </staticContent>
  </system.webServer>
6 голосов
/ 21 марта 2012

Я знаю, что это старый вопрос, но ...

Я просто заметил, что мой экземпляр IISExpress не обслуживает woff-файлы, поэтому я не искал (нашел это), а затем обнаружил:

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

Полагаю, моя установка поддерживает SVG, поскольку у меня не было проблем с этим. Но инструкции для woff тривиально модифицируемы:

  • Откройте консольное приложение с правами администратора.
  • Переход в каталог IIS Express. Это живет в Program Files или Program Files (x86)
  • Запустите команду:

    appcmd set config / section: staticContent / + [fileExtension = 'woff', mimeType = 'application / x-woff']

Решил мою проблему, и мне не пришлось возиться с каким-то отвратительным конфигом (как я должен был добавить поддержку глаголов PUT и DELETE). Ура!

3 голосов
/ 03 марта 2015

Чтобы решить проблему, дважды щелкните параметр конфигурации «Типы MIME», выбрав корневой узел IIS на левой панели, и нажмите ссылку «Добавить ...» на панели «Действия» справа. Это вызовет следующий диалог. Добавьте расширение файла .woff и укажите «application / x-font-woff» в качестве соответствующего типа MIME:

enter image description here

То же самое для woff2 с приложением / x-font-woff2

3 голосов
/ 03 октября 2013

Я не использую IIS Express, но развиваюсь под моим Local Full IIS 7.

Так что, если кто-то еще пытается сюда сделать это, мне нужно было добавить тип mime для woff через IIS Manager

MIME-типы >> Нажмите Добавить ссылку справа и введите расширение: .woff MIME-тип: application / font-woff

3 голосов
/ 27 февраля 2013

Спасибо за этот пост. Я получил это работало для использования шаблонов усов в моем проекте asp.net MVC Я использовал следующее, и это сработало для меня.

<system.webServer>   
  <staticContent>
   <mimeMap fileExtension=".mustache" mimeType="text/html"/>
  </staticContent>
</system.WebServer>
0 голосов
/ 06 апреля 2016

У меня возникла проблема с получением приложения ASP.NET 5.0 / MVC 6 для обслуживания статических двоичных типов файлов или просмотра виртуальных каталогов.Похоже, что это теперь делается в Configure () при запуске.См. http://docs.asp.net/en/latest/fundamentals/static-files.html для быстрого праймера.

...