Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
nginx
GitHub Repository: nginx/nginx.org
Path: blob/main/xml/ru/docs/http/ngx_http_gzip_module.xml
1 views
1
<?xml version="1.0"?>
2
3
<!--
4
Copyright (C) Igor Sysoev
5
Copyright (C) Nginx, Inc.
6
-->
7
8
<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
9
10
<module name="Модуль ngx_http_gzip_module"
11
link="/ru/docs/http/ngx_http_gzip_module.html"
12
lang="ru"
13
rev="5">
14
15
<section id="summary">
16
17
<para>
18
Модуль <literal>ngx_http_gzip_module</literal> — это фильтр,
19
сжимающий ответ методом gzip,
20
что позволяет уменьшить размер передаваемых данных в 2 и более раз.
21
<note>
22
При использовании протокола SSL/TLS сжатые ответы могут быть подвержены
23
атакам <link url="https://en.wikipedia.org/wiki/BREACH">BREACH</link>.
24
</note>
25
</para>
26
27
</section>
28
29
30
<section id="example" name="Пример конфигурации">
31
32
<para>
33
<example>
34
gzip on;
35
gzip_min_length 1000;
36
gzip_proxied expired no-cache no-store private auth;
37
gzip_types text/plain application/xml;
38
</example>
39
</para>
40
41
<para>
42
Для записи в лог достигнутого коэффициента сжатия можно использовать переменную
43
<var>$gzip_ratio</var>.
44
</para>
45
46
</section>
47
48
49
<section id="directives" name="Директивы">
50
51
<directive name="gzip">
52
<syntax><literal>on</literal> | <literal>off</literal></syntax>
53
<default>off</default>
54
<context>http</context>
55
<context>server</context>
56
<context>location</context>
57
<context>if в location</context>
58
59
<para>
60
Разрешает или запрещает сжатие ответа методом gzip.
61
</para>
62
63
</directive>
64
65
66
<directive name="gzip_buffers">
67
<syntax><value>число</value> <value>размер</value></syntax>
68
<default>32 4k|16 8k</default>
69
<context>http</context>
70
<context>server</context>
71
<context>location</context>
72
73
<para>
74
Задаёт <value>число</value> и <value>размер</value> буферов,
75
в которые будет сжиматься ответ.
76
По умолчанию размер одного буфера равен размеру страницы.
77
В зависимости от платформы это или 4K, или 8K.
78
<note>
79
До версии 0.7.28 по умолчанию использовалось 4 буфера размером 4K или 8K.
80
</note>
81
</para>
82
83
</directive>
84
85
86
<directive name="gzip_comp_level">
87
88
<syntax><value>степень</value></syntax>
89
<default>1</default>
90
<context>http</context>
91
<context>server</context>
92
<context>location</context>
93
94
<para>
95
Устанавливает <value>степень</value> сжатия ответа методом gzip.
96
Допустимые значения находятся в диапазоне от 1 до 9.
97
</para>
98
99
</directive>
100
101
102
<directive name="gzip_disable">
103
<syntax><value>regex</value> ...</syntax>
104
<default/>
105
<context>http</context>
106
<context>server</context>
107
<context>location</context>
108
<appeared-in>0.6.23</appeared-in>
109
110
<para>
111
Запрещает сжатие ответа методом gzip для запросов
112
с полями заголовка <header>User-Agent</header>,
113
совпадающими с заданными регулярными выражениями.
114
</para>
115
116
<para>
117
Специальная маска “<literal>msie6</literal>” (0.7.12) соответствует
118
регулярному выражению “<literal>MSIE [4-6]\.</literal>”, но работает быстрее.
119
Начиная с версии 0.8.11 из этой маски исключается
120
<literal>MSIE 6.0; ... SV1</literal>”.
121
</para>
122
123
</directive>
124
125
126
<directive name="gzip_http_version">
127
<syntax><literal>1.0</literal> | <literal>1.1</literal></syntax>
128
<default>1.1</default>
129
<context>http</context>
130
<context>server</context>
131
<context>location</context>
132
133
<para>
134
Устанавливает минимальную HTTP-версию запроса, необходимую для сжатия ответа.
135
</para>
136
137
</directive>
138
139
140
<directive name="gzip_min_length">
141
<syntax><value>длина</value></syntax>
142
<default>20</default>
143
<context>http</context>
144
<context>server</context>
145
<context>location</context>
146
147
<para>
148
Устанавливает минимальную длину ответа, который будет сжиматься методом gzip.
149
Длина определяется только из поля <header>Content-Length</header>
150
заголовка ответа.
151
</para>
152
153
</directive>
154
155
156
<directive name="gzip_proxied">
157
<syntax>
158
<literal>off</literal> |
159
<literal>expired</literal> |
160
<literal>no-cache</literal> |
161
<literal>no-store</literal> |
162
<literal>private</literal> |
163
<literal>no_last_modified</literal> |
164
<literal>no_etag</literal> |
165
<literal>auth</literal> |
166
<literal>any</literal>
167
...</syntax>
168
<default>off</default>
169
<context>http</context>
170
<context>server</context>
171
<context>location</context>
172
173
<para>
174
Разрешает или запрещает сжатие ответа методом gzip для проксированных
175
запросов в зависимости от запроса и ответа.
176
То, что запрос проксированный, определяется на основании наличия поля
177
<header>Via</header> в заголовке запроса.
178
В директиве можно указать одновременно несколько параметров:
179
<list type="tag">
180
181
<tag-name><literal>off</literal></tag-name>
182
<tag-desc>
183
запрещает сжатие для всех проксированных запросов,
184
игнорируя остальные параметры;
185
</tag-desc>
186
187
<tag-name><literal>expired</literal></tag-name>
188
<tag-desc>
189
разрешает сжатие, если в заголовке ответа есть поле
190
<header>Expires</header> со значением, запрещающим кэширование;
191
</tag-desc>
192
193
<tag-name><literal>no-cache</literal></tag-name>
194
<tag-desc>
195
разрешает сжатие, если в заголовке ответа есть поле
196
<header>Cache-Control</header> с параметром “<literal>no-cache</literal>”;
197
</tag-desc>
198
199
<tag-name><literal>no-store</literal></tag-name>
200
<tag-desc>
201
разрешает сжатие, если в заголовке ответа есть поле
202
<header>Cache-Control</header> с параметром “<literal>no-store</literal>”;
203
</tag-desc>
204
205
<tag-name><literal>private</literal></tag-name>
206
<tag-desc>
207
разрешает сжатие, если в заголовке ответа есть поле
208
<header>Cache-Control</header> с параметром “<literal>private</literal>”;
209
</tag-desc>
210
211
<tag-name><literal>no_last_modified</literal></tag-name>
212
<tag-desc>
213
разрешает сжатие, если в заголовке ответа нет поля
214
<header>Last-Modified</header>;
215
</tag-desc>
216
217
<tag-name><literal>no_etag</literal></tag-name>
218
<tag-desc>
219
разрешает сжатие, если в заголовке ответа нет поля
220
<header>ETag</header>;
221
</tag-desc>
222
223
<tag-name><literal>auth</literal></tag-name>
224
<tag-desc>
225
разрешает сжатие, если в заголовке запроса есть поле
226
<header>Authorization</header>;
227
</tag-desc>
228
229
<tag-name><literal>any</literal></tag-name>
230
<tag-desc>
231
разрешает сжатие для всех проксированных запросов.
232
</tag-desc>
233
234
</list>
235
</para>
236
237
</directive>
238
239
240
<directive name="gzip_types">
241
<syntax><value>mime-тип</value> ...</syntax>
242
<default>text/html</default>
243
<context>http</context>
244
<context>server</context>
245
<context>location</context>
246
247
<para>
248
Разрешает сжатие ответа методом gzip для указанных MIME-типов в дополнение
249
к “<literal>text/html</literal>”.
250
Специальное значение “<literal>*</literal>” соответствует любому MIME-типу
251
(0.8.29).
252
Ответы с типом “<literal>text/html</literal>” сжимаются всегда.
253
</para>
254
255
</directive>
256
257
258
<directive name="gzip_vary">
259
<syntax><literal>on</literal> | <literal>off</literal></syntax>
260
<default>off</default>
261
<context>http</context>
262
<context>server</context>
263
<context>location</context>
264
265
<para>
266
Разрешает или запрещает выдавать в ответе поле заголовка
267
<header>Vary: Accept-Encoding</header>, если активны директивы
268
<link id="gzip"/>,
269
<link doc="ngx_http_gzip_static_module.xml" id="gzip_static"/> или
270
<link doc="ngx_http_gunzip_module.xml" id="gunzip"/>.
271
</para>
272
273
</directive>
274
275
</section>
276
277
278
<section id="variables" name="Встроенные переменные">
279
280
<para>
281
<list type="tag">
282
283
<tag-name id="var_gzip_ratio"><var>$gzip_ratio</var></tag-name>
284
<tag-desc>достигнутый коэффициент сжатия — отношение размера исходного
285
ответа к размеру сжатого.</tag-desc>
286
287
</list>
288
</para>
289
290
</section>
291
292
</module>
293
294