Google PageSpeed:为CDN提供的css文件生成关键css

时间:2014-10-01 06:58:07

标签: nginx cdn pagespeed mod-pagespeed

我们尝试使用google pagespeed优化网站,现在遇到了一些问题:

我们正在使用nginx_pagespeed模块 尝试启用prioritize_critical_css过滤器 由于CSS文件是从外部CDN域加载的,因此关键的css过滤器无法正常工作。 使用?PageSpeedFilters = debug运行时,会在html源代码中生成以下错误

CriticalCssBeacon

的摘要计算状态

资源0 https://mycdndomain.com/styles/screen-2d470013.css:无法创建资源:其域未经授权且未启用InlineUnauthorizedResources,或者无法获取(检查服务器日志)

mycdndomain是我们的CDN域名。

有人可以帮我解决这个问题。需要哪些nginx pagespeed配置更改?

还有什么是InlineUnauthorizedResources?

1 个答案:

答案 0 :(得分:0)

默认情况下,mod_pagespeed仅重写与HTML相同的域上的资源,以便在您需要明确授权重写的其他域上重写资源,并可能进行一些配置。

最简单的说,您可以使用pagespeed Domain声明授权域名进行重写:

pagespeed Domain https://mycdndomain.com;

这将指示mod_pagespeed重写该域中的资源。

但要小心,这只是指示mod_pagespeed重写URL,您必须确保您的CDN可以提供重写的URL!如果只是从服务器中提取内容,这应该没问题,但如果是推送CDN,则在更改URL时会中断。

有关授权和映射域的完整说明,请参阅https://developers.google.com/speed/pagespeed/module/domains