To clarify, it’s not a problem with Caddy or what you have installed. Caddy uses a pure-Go implementation of zstd, so it’s bundled with Caddy. We use GitHub - klauspost/compress: Optimized Go Compression Packages for our compression needs.
But yeah, most browsers don’t have zstd support. Chrome and Firefox support gzip, deflate, br
– that’s what they send in the Accept-Encoding
header.
Gzip and Deflate are very similar – same underlying compression algorithm, but they differ in their header/footer info and the checksum algorithm used. See asp.net - What is the advantage of GZIP vs DEFLATE compression? - Stack Overflow
Caddy doesn’t support Brotli out of the box because there’s no fast pure-Go implementation yet. Brotli is pretty slow at compressing, but produces smaller results with still-very-good decompression performance. So it’s a good option when pre-compressing files, and Caddy’s file_server
can serve these pre-compressed files for you if you need. But that’s a more advanced usecase and depends on your site’s build tooling to support it.