I assume, one would have both the uncompressed file, say index.html, and the compressed variant, index.html.gz, side-by-side in the same folder, and the web server will serve the .gz one if the browser seems to support compression. (I also assume, it will be the user’s responsibility to make sure both the files are in sync.)
This is something that Caddy2 supports also (if I remember correctly).
The diff is that the solution written by @prx is written directly in C into the httpd code, and just to manage the compressed static files .gz. This code is compliant with unveil+pledge, if I’m not mistaken.
On my article, the solution is more complex, and certainly perfectible; this use the slowcgi server (native server cgi), needed more dependencies, but allow too the management of compressed static file .br (by brotli).
Awesome! Gzip in httpd to deliver precompressed files with content-encoding gzip.
How will that work?
I assume, one would have both the uncompressed file, say
index.html
, and the compressed variant,index.html.gz
, side-by-side in the same folder, and the web server will serve the.gz
one if the browser seems to support compression. (I also assume, it will be the user’s responsibility to make sure both the files are in sync.)This is something that Caddy2 supports also (if I remember correctly).
I was already doing that via something similar to https://doc.huc.fr.eu.org/en/web/httpd/httpd-delivers-compressed-files/
Oh! My article, here :D
The diff is that the solution written by @prx is written directly in C into the httpd code, and just to manage the compressed static files .gz. This code is compliant with unveil+pledge, if I’m not mistaken. On my article, the solution is more complex, and certainly perfectible; this use the slowcgi server (native server cgi), needed more dependencies, but allow too the management of compressed static file .br (by brotli).
Personnally, I prefere use nginx.
it is much simpler and easier to manage many things with nginx than with httpd/relayd.
Why? What? How?