интернет-проводник шрифта лица ssl - PullRequest
6 голосов
/ 01 февраля 2012

Шрифты для моего сайта работают нормально во всех браузерах, использующих http.Однако, когда я перехожу на https, шрифты не работают в IE8 и ниже, корректно работает в ie9.

Используя IE, когда я набираю путь к файлу .eot с помощью http, я получаю опцию загрузки файла, но когда я использую https, он говорит, что не может быть найден.

Я использую самозваный сертификат.iis 7.5 .net 4.0, umbraco 4.7.0 cms, клиентская структура зависимостей (я пробовал с удаленной клиентской инфраструктурой, все еще не работает).

<style type="text/css">    
@font-face {
                font-family: 'GGX88UltraLight';
                src: url('/css/type/ggx88_ul-webfont.eot');
                src: url('/css/type/ggx88_ul-webfont.eot?iefix') format('embedded-opentype'),
                     url('/css/type/ggx88_ul-webfont.woff') format('woff'),
                     url('/css/type/ggx88_ul-webfont.ttf') format('truetype'),
                     url('/css/type/ggx88_ul-webfont.svg#webfontU6kiGgEl') format('svg');
                font-weight: normal;
                font-style: normal;
    }
</style>

значения веб-конфигурации, которые могут быть полезны

<staticContent>
  <!-- Set expire headers to 30 days for static content-->
  <clientCache cacheControlMode="DisableCache" cacheControlMaxAge="30.00:00:00" />
  <!-- use utf-8 encoding for anything served text/plain or text/html -->
  <remove fileExtension=".css" />
  <mimeMap fileExtension=".css" mimeType="text/css; charset=UTF-8" />
  <remove fileExtension=".js" />
  <mimeMap fileExtension=".js" mimeType="text/javascript; charset=UTF-8" />
  <remove fileExtension=".json" />
  <mimeMap fileExtension=".json" mimeType="application/json; charset=UTF-8" />
  <remove fileExtension=".rss" />
  <mimeMap fileExtension=".rss" mimeType="application/rss+xml; charset=UTF-8" />
  <remove fileExtension=".html" />
  <mimeMap fileExtension=".html" mimeType="text/html; charset=UTF-8" />
  <remove fileExtension=".xml" />
  <mimeMap fileExtension=".xml" mimeType="application/xml; charset=UTF-8" />
  <!-- HTML5 Video mime types-->
  <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
  <mimeMap fileExtension=".m4v" mimeType="video/m4v" />
  <mimeMap fileExtension=".ogg" mimeType="video/ogg" />
  <mimeMap fileExtension=".ogv" mimeType="video/ogg" />
  <mimeMap fileExtension=".webm" mimeType="video/webm" />
  <!-- Remove default IIS mime type for .eot which is application/octet-stream -->
  <remove fileExtension=".eot" />
  <mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" /> 
  <mimeMap fileExtension=".otf" mimeType="font/otf" />
  <mimeMap fileExtension=".woff" mimeType="font/x-woff" />
  <mimeMap fileExtension=".crx" mimeType="application/x-chrome-extension" />
  <mimeMap fileExtension=".xpi" mimeType="application/x-xpinstall" />
  <mimeMap fileExtension=".safariextz" mimeType="application/octet-stream" />
</staticContent>
<httpProtocol allowKeepAlive="true">
  <customHeaders>
    <add name="X-UA-Compatible" value="IE=Edge,chrome=1" />
    <add name="Access-Control-Allow-Origin" value="*" />
  </customHeaders>
</httpProtocol>

Ответы [ 3 ]

5 голосов
/ 29 марта 2017

Я столкнулся с тем же поведением при использовании весенней загрузки: решение, которое я нашел, было

- Скрыть заголовки, возвращаемые Pragma и Cache-Control в браузер:

Spring-boot отвечает определенными заголовками Cache-Control и Pragma HTTP.

Cache-Control :"no-cache, no-store, max-age=0, must-revalidate"
Pragma :"no-cache"

Internet Explorer (в моем случае IE11) не может загружать шрифты с этими заголовками.Я считаю, что это ошибка, и мы должны с ней справиться.

Используя nginx для прокси-приложения нашего приложения весенней загрузки, я мог бы преодолеть эту проблему, скрыв эти заголовки для браузера, используя следующие команды конфигурации nginx:

server {
        listen 443;
        server_name server.dns.name;
        ssl on;
        ssl_certificate /etc/nginx/ssl/server.dns.name.pem;
        ssl_certificate_key /etc/nginx/ssl/server.dns.name.key;

        location / {
            include  /etc/nginx/mime.types;
            rewrite ^/(.*) /$1 break;
            proxy_pass  http://127.0.0.1:8080;
            proxy_read_timeout 90;

            #IE specific tweak for fonts not to be ignored:
            proxy_hide_header Cache-Control;
            proxy_hide_header Pragma; 
            #END IE specific tweak for fonts not to be ignored
        }
}
2 голосов
/ 04 января 2013

Что делать, если вы измените порядок URL-источников. Например, поместить URL-адрес "svg" на второе место ... сразу после "embedded-opentype".

   @font-face {
                font-family: 'GGX88UltraLight';
                src: url('/css/type/ggx88_ul-webfont.eot');
                src: url('/css/type/ggx88_ul-webfont.eot?iefix') format('embedded-opentype'),
                     url('/css/type/ggx88_ul-webfont.svg#webfontU6kiGgEl') format('svg'),
                     url('/css/type/ggx88_ul-webfont.woff') format('woff'),
                     url('/css/type/ggx88_ul-webfont.ttf') format('truetype');
                font-weight: normal;
                font-style: normal;
    }
0 голосов
/ 15 ноября 2012

https сайты используют некоторые SSL-сертификаты.Как бы то ни было, вы должны доверять им.Для получения более подробной информации о том, как поставить доверие вручную, посетите https://serverfault.com/questions/176242/how-to-manually-trust-an-ssl-certificate-to-a-development-server

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...