即使已为gzip压缩配置Web服务器,静态文件也显示为未压缩

gsr*_*ast 6 gzip nginx amazon-elastic-beanstalk

我在Amazon Elastic BeanStalk上托管了我的网站.它使用nginx作为代理服务器并启用了gzip压缩.但是当我在网站上运行PageInsights时,它会报告我的许多静态内容文件需要进行gzip压缩.为什么PageSpeed Insights无法识别压缩?有什么额外的东西需要做吗?

Dmi*_*ink 5

我想我确实找到了答案

通过在nginx上启用gzip压缩,只为text/html启用它(即nginx默认http://nginx.org/en/docs/http/ngx_http_gzip_module.html#gzip_types)

要为其他类型启用它,您必须明确地执行此操作.如果是beanstalk,请在项目中创建以下文件

.ebextensions/gzip.config

并将代码放在那里(确保你保留缩进,这很重要):

files:
  /etc/nginx/conf.d/gzip.conf:
    content: |
      gzip_types application/json;
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,在我的情况下,我需要gzip json文件,你可能有问题,Pagespeed抱怨css和js文件,对吧?如上面的链接所示,您可以使用*通配符来压缩所有内容,但如果没有,只需在配置中列出您需要的mime类型,进行部署,然后再次检查PageSpeed Insights.