gatsby compression doesn't work in live server, only on local

873 Views Asked by At

I am using the brotli plugin for compressing my bundles in gatsby: https://github.com/ovhemert/gatsby-plugin-brotli

the plugin is configured as follows:

{
      resolve: "gatsby-plugin-brotli",
      options: {
        extensions: ["css", "html", "js", "svg", "ttf"],
      },
    },
}

For some reason, it seems to work only when I "gatsby serve" it on my local machine (localhost:9000), but uploading it to a bucket on S3, shows no compressions what so ever:

local deployment: local compression

s3 deployment: prod compression

Nothing works, no matter what I've tried. for uploading to S3, I've been using the gatsby-plugin-s3 package: https://github.com/jariz/gatsby-plugin-s3

Any idea? Thanks!

EDIT: I checked the bucket to make sure that it contains the compressed files and it does, but also the decompressed files: s3 bucket

So I guess I need to refine my questions, but not sure how... not sure what caused this issue

1

There are 1 best solutions below

0
On BEST ANSWER

So after spending quite some time on this issue, I finally found the answer in AWS docs. I'm using CloudFront to serve the site, but since this site is a demo site for testing purposes, I didn't purchase an HTTPS Cert for it. According to AWS Docs, CF doesn't serve compressed content over HTTP, ONLY on HTTPS: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html

Purchasing and installing a certificate SOLVED this problem for me.