Подтвердить что ты не робот

Шрифт .OTF не используется в Azure

У меня есть приложение MVC 4 с шрифтом .otf в папке /images. Он работает на моем рабочем столе, но когда я развертываю на лазурный, я получаю 404 при попытке получить доступ /images/myfont.otf

У шрифта уже есть свойство Build Action, установленное в 'Content'

Как я могу заставить Azure забрать это?

4b9b3361

Ответ 1

Вероятно, вам нужно настроить IIS, чтобы правильно обслуживать этот тип файла. Вы делаете это, добавляя следующее к элементу <system.webServer> в Web.config:

<staticContent>
    <mimeMap fileExtension=".otf" mimeType="font/otf" />
</staticContent>

Дополнительная информация http://www.big.info/2013/06/how-to-use-otf-opentype-format-fonts-on.html

Ответ 2

Поместите в web.config в конфигурацию system.webServer следующее:

<system.webServer>    
   <staticContent>
       <remove fileExtension=".otf" />
       <mimeMap fileExtension=".otf" mimeType="font/otf" />
    </staticContent>
</system.webServer>

Ответ 3

Ошибка HTTP 404 означает, что контент не найден на сервере. Это означает, что при развертывании приложения в Windows Azure содержимое не было в пакете.

Как вы предположили выше, у вас есть .OTF, установленный как контент, это означает, что вы просите компилятор рассматривать его как статический файл и не создавать его, однако конкретный файл не будет скопирован в конечную папку вывода, чтобы быть часть окончательного CSPKG. Вам нужно будет установить "Копировать в выходной каталог" как "всегда копировать", чтобы он мог быть частью CSPKG и развернут в службу Azure Cloud.

После правильного задания свойств файла и создания приложения вы можете вручную посетить папку вывода, чтобы проверить, что файл есть, а также ваш CSPKG, просто разархивировав его.

enter image description here

Ответ 4

Проблема для меня в том, что файлы не были включены в проект. Они находились в правильном пути к файлу ((project)/Content/fonts/*), но не рассматривались как часть проекта (т.е. Ссылки в файле *.csproj). Решение состояло в том, чтобы щелкнуть правой кнопкой мыши папку fonts и выбрать опцию Include in Project.

Ответ 5

Лучше всего, что у вас есть относительные пути к вашим файлам шрифтов внутри вашего css.

Вы получаете Запрет 403? Это может означать, что ваш путь к файлу отключен.

Попробуйте изменить свои пути от.. /filename.otf к чему-то вроде /Styles/filename.otf(или независимо от вашего пути)