我在IE 7,8,9的HTTPS上使用@ font-face遇到了问题-它根本没有加载。不管包含的HTML页面是否托管在HTTPS上都没有关系, 当我尝试通过HTTP加载EOT字体时,它可以工作,而HTTPS则不能 。有人看到过这种行为吗?
托管字体的服务器正在发送正确的content-type =“ application / vnd.ms-fontobject”
我尝试了多种字体,所以它不是特定于字体的。
字体是在FontSquirrel生成的
@font-face { font-family: 'GothamCondensedBold'; src:url('path/to/fontgothmbcd-webfont.eot'); src:url('path/to/fontgothmbcd-webfont.eot?#iefix') format('embedded-opentype'), url('path/to/fontgothmbcd-webfont.woff') format('woff'), url('path/to/fontgothmbcd-webfont.ttf') format('truetype'), url('path/to/fontgothmbcd-webfont.svg#GothamCondensedBold') format('svg'); font-weight: normal; font-style: normal; }
我知道这是一个旧线程,但我只需要权衡一下。在所有版本的Internet Explorer(7-11)中,EOT和WOFF字体都存在相同的问题,但无法通过HTTPS加载。经过数小时的反复试验,并将标头与其他工作站点进行比较,我们发现正是vary标头弄乱了事情。取消为这些文件类型设置标头即可立即解决我们的问题。
vary
<FilesMatch "\.(woff)$"> Header unset Vary </FilesMatch> <FilesMatch "\.(eot)$"> Header unset Vary </FilesMatch>