我无法通过在IE或Firefox中使用azure cdn曝光的azure blob存储托管字体。
我认为这是因为@ font-face跨域问题(CORS),正常的解决方案是添加一个Access-Control-Allow-Origin标头。我知道大多数CDN现在支持这个,但我假设Azure仍然没有。谁能证实这一点?
如果是这种情况,是否有任何解决方法?
答案 0 :(得分:8)
这不再是真的,azure支持CORS
以及向azure cdn添加字体的一些指南:
http://www.devtrends.co.uk/blog/hosting-web-fonts-in-azure-blob-storage-using-the-new-cors-support
答案 1 :(得分:3)
CDN不会修改来自原点的标题,因此它会响应blob存储发出的任何标题。 Blob存储不支持CORS头。
我很惊讶地发现@ font-face有跨域限制,但看起来你是对的(对于Firefox和IE)。
如果你有这个选项,你可以将字体放在CDN后面的云服务(而不是blob存储)上,并在那里发出正确的标题。
答案 2 :(得分:1)
您的评估是正确的。
作为解决方法,我们公司正在使用Google存储(支持CORS)。
我还建议对此问题进行投票,以便Azure团队知道有多少人遇到了这个问题。
答案 3 :(得分:0)
我可以使用字体,而无需设置CORS选项。我将字体直接链接到Blob存储,而不是CDN,因为该字体不支持Blob的CORS。