GitLab Pages doesn’t compress files automatically before sending them to clients. Is it possible to enable gzip compression when using Jekyll (or another static site generator) on GitLab Pages?
1 Answer
GitLab Pages will serve pre-compressed .gz
files that exist alongside uncompressed equivalents. A general solution that should work with most static publishing systems is to put this as the last step in the build process in .gitlab-ci.yml
:
find public \( -name '*.html' -o -name '*.css' -o -name '*.js' \) -print0 | xargs -0 gzip -9 -kv
You can also easily extend the find
pattern to include other file extensions too, if you have other kinds of files that need compressing before being served.