Google CDN未为AMP页面缓存自托管网络字体



我的公司最近开始为我们的一个网站试用AMP页面。这个过程非常有效,我们看到谷歌为我们的页面编制索引,以便在AMP旋转木马中使用:PennLive.com的移动谷歌搜索结果。

然而,我们的字体资产在谷歌旋转木马中以404的形式返回,尽管它们直接在我们的AMP页面上工作。

https://cdn.ampproject.org/r/www.pennlive.com/static/common/fonts/v1/benton-sans-medium/448c4642-c106-472f-9c6a-a4d7b5347b03-3.woff返回404

而:

http://www.pennlive.com/static/common/fonts/v1/benton-sans-medium/448c4642-c106-472f-9c6a-a4d7b5347b03-3.woff返回200

在amphtml文档中,它说自托管字体必须通过http或https提供,这就是我们为页面所做的,AMP页面显然正在验证。

为什么这些字体在Google AMP转盘内不返回200

示例页面:http://www.pennlive.com/articles/18505993/penn_state_commit_damion_barbe.amp

https://www.google.com/amp/www.pennlive.com/articles/18505993/penn_state_commit_damion_barbe.amp#development=1

您的服务器正在返回.woff字体文件的无效内容类型。

$ curl -I http://www.pennlive.com/static/common/fonts/v1/benton-sans-medium/448c4642-c106-472f-9c6a-a4d7b5347b03-3.woff
HTTP/1.1 200 OK
Date: Fri, 20 May 2016 17:27:48 GMT
Last-Modified: Wed, 18 May 2016 15:03:07 GMT
Accept-Ranges: bytes
Cache-Control: max-age=604800
Expires: Fri, 27 May 2016 17:27:48 GMT
Content-Type: text/plain; charset=UTF-8
X-Varnish: 198714588
Via: 1.1 varnish-v4
X-ADI-VCache: MISS
Content-Length: 54040
Connection: keep-alive

注释Content-Type: text/plain;

我想你想要application/x-font-wofffont/woff

查看AMP页面会很有帮助;否则我会试图推断可能发生的事情。

Font Awesome字体也有类似的问题。最终发现了这种方法:

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"
  rel="stylesheet" 
  integrity="sha256-MfvZlkHCEqatNoGiOXveE8FIwMzZg4W85qfrfIFBfYc= sha512-dTfge/zgoMYpP7QbHy4gWMEGsbsdZeCXz7irItjcC3sPUFtf0kuFbDz/ixG7ArTxmDjLXDmezHubeNikyKGVyQ==" 
  crossorigin="anonymous"
>

我知道benton sans media可能是您授权的字体。如果他们会为你提供字体,上面的方法可能会很有用。

最新更新