2014-02-05 525 views
1

这已被问了好几次,但没有发现任何解决方案的帮助。我们在https上使用字体真棒(不知道它有什么不同),IE9中的图标显示为正方形。这只发生在ie9上。字体真棒ie9 https

任何人之前有此问题或有想法?

谢谢你

+0

当你只在IE9说,你的意思是它工作在Firefox,Chrome和IE的其他版本? – VictorySaber

+0

看看这是否有所帮助:为IE9提供Web字体的最佳实践 http://www.fontspring.com/blog/fixing-ie9-font-face-problems – VictorySaber

+0

这是正确的VictorySaber,除IE9以外的所有工作。我会尝试链接谢谢你。 – Thibs

回答

0

这发生在只有https的IE中。

从防止缓存的fontawesome相关文件中删除任何HTTP头,例如

Expires -1 
Pragma: no-cache 

删除这些文件的缓存控制后,您应该看到您的图标。重新加载页面后,所有相关的fontawesome文件应显示HTTP代码304,即该文件来自浏览器缓存。

+0

欢迎来到堆栈溢出!请不要在多个问题上发布相同的答案。发布一个很好的答案,然后投票/标记以重复关闭其他问题。 – Taryn

0

检查缓存无效的HTTP响应头 因为HTTPS下, 的Internet Explorer(高达IE11)似乎不加载字体也不矢量图标,如果 缓存或存储无效指令设置在HTTP标头:

例如,spring-boot会生成以下头文件,因此图标不会显示在https下:

Cache-Control:“no-cache,no-store,max-age = 0,must-revalidate”

and

编译指示:“no-cache”

解决方法是将这些标题隐藏到浏览器。

我用nginx的作为代理,加入如下因素命令HTTPS代理位置:

proxy_hide_header缓存控制; proxy_hide_header Pragma;

有关nginx的详细信息,请查看此处。

使用Apache httpd的,语法是这里