You can't just plop GZIP files on the server. You have to do content
negotiation and would need two copies of each static file (one
compressed, one not).
again, there is nothing to set up. The browser send the header if
present (Accept-Encoding), the server read if it accepts deflate and/
or gzip, the server serves the raw binary file using binary transfer
with length and all the necessary for a basic HTTP request as is a get
over a *whatever* file ... end of the story, when the UA finishes the
download it will decompress locally using the right algo provided by
the server.
The server in this case has *nothing* to do except send right headers,
something it has to do in any case ... than if you have a single
example that does not allow you to serve a binary file I'd love to see
it 'cause to me there is no such case with all I have tried so far
(but hey it's IT, you never know what people use).
Finally, as Stefan Weiss already pointed out, there is no reason to
compress over and over the same file and for each request, libraries
are up to 1mb and more uncompressed, this means stress and this is why
the project I have talked about is fast in the server almost like a
plain text, and 2 up to 10 times or more faster than whatever handler
you use (if you can) since there is *no* runtime compression plus the
Etag is not generated runtime over a compressed version (again, no
reason to compress runtime, *easy*, *simple*, *faster*, until somebody
demonstrates it is not true with benchmarks, those I have already
provided there ... but of course if somebody skip things ...
Br,
Andrea Giammarchi