Using gzip
directive, you can compress the response payload.
Example
gzip on;
gzip_comp_level
4;
gzip_types
text/plain;
gzip_types
application/json;
gzip:
Enable or disable zipping of responses
Enables or
disables gzipping of responses.
Syntax: gzip on | off;
Default:
gzip off;
Context:
http, server, location, if in location
gzip_comp_level:
Set zipping compression level
Sets a
gzip compression level of a response. Acceptable values are in the range from 1
to 9. Higher value means more compression and require more computing resources.
Syntax: gzip_comp_level level;
Default:
gzip_comp_level 1;
Context:
http, server, location
gzip_types:
Specify MIME types to compress
Syntax:
gzip_types mime-type ...;
Default:
gzip_types text/html;
Context:
http, server, location
Enables
gzipping of responses for the specified MIME types. Responses with the
“text/html” type are always compressed.
Unless
client send 'Accept-Encoding: gzip' header, nginx do not perform zipping of
data.
$curl http://localhost:9090/about > temp.txt
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 240 100 240 0 0 37238 0 --:--:-- --:--:-- --:--:-- 40000
$
$
$curl -H 'Accept-Encoding: gzip, deflate' http://localhost:9090/about > temp_compressed.txt
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 63 0 63 0 0 7232 0 --:--:-- --:--:-- --:--:-- 7875
$
$ls -lart temp*txt
-rw-r--r-- 1 krishna admin 240 Oct 17 10:38 temp.txt
-rw-r--r-- 1 krishna admin 63 Oct 17 10:38 temp_compressed.txt
As you see
the content size of temp.txt and temp_compressed.txt, temp.txt has file size of
240 bytes, whereas temp_compressed.txt has the file size of 63 bytes.
No comments:
Post a Comment