Mercurial > hg > nginx-site
comparison xml/ru/docs/http/server_names.xml @ 2767:c56adb7148a4
Described more details about server selection.
In particular, this covers how the large_client_header_buffers (ticket #1523)
and underscores_in_headers (ticket #1987) directives work in virtual servers.
author | Yaroslav Zhuravlev <yar@nginx.com> |
---|---|
date | Tue, 13 Jul 2021 13:44:05 +0100 |
parents | 30e2bd353998 |
children | 3b5594157fab |
comparison
equal
deleted
inserted
replaced
2766:167329042128 | 2767:c56adb7148a4 |
---|---|
6 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> | 6 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> |
7 | 7 |
8 <article name="Имена сервера" | 8 <article name="Имена сервера" |
9 link="/ru/docs/http/server_names.html" | 9 link="/ru/docs/http/server_names.html" |
10 lang="ru" | 10 lang="ru" |
11 rev="3" | 11 rev="4" |
12 author="Игорь Сысоев" | 12 author="Игорь Сысоев" |
13 editor="Brian Mercer"> | 13 editor="Brian Mercer"> |
14 | 14 |
15 | 15 |
16 <section> | 16 <section> |
340 </para> | 340 </para> |
341 | 341 |
342 </section> | 342 </section> |
343 | 343 |
344 | 344 |
345 <section id="virtual_server_selection" | |
346 name="Выбор виртуального сервера"> | |
347 | |
348 <para> | |
349 Сначала соединение создаётся в контесте сервера по умолчанию. | |
350 Затем имя сервера может быть определено | |
351 на следующих стадиях обработки запроса, | |
352 каждая из которых участвует в выборе конфигурации: | |
353 | |
354 <list type="bullet"> | |
355 | |
356 <listitem> | |
357 <para> | |
358 предварительно во время операции SSL handshake согласно | |
359 <link doc="configuring_https_servers.xml" id="sni">SNI</link> | |
360 </para> | |
361 </listitem> | |
362 | |
363 <listitem> | |
364 <para> | |
365 после обработки строки запроса | |
366 </para> | |
367 </listitem> | |
368 | |
369 <listitem> | |
370 <para> | |
371 после обработки поля <literal>Host</literal> заголовка запроса | |
372 </para> | |
373 </listitem> | |
374 | |
375 <listitem> | |
376 <para> | |
377 если после обработки строки запроса или | |
378 поля <literal>Host</literal> заголовка запроса имя сервера не было выбрано, | |
379 то nginx будет использовать пустое имя в качестве имени сервера. | |
380 </para> | |
381 </listitem> | |
382 | |
383 </list> | |
384 | |
385 На каждой из этих стадий могут применяться различные конфигурации сервера. | |
386 Таким образом, некоторые директивы следует указывать с осторожностью: | |
387 <list type="bullet"> | |
388 | |
389 <listitem> | |
390 в случае использования | |
391 директивы <link doc="ngx_http_ssl_module.xml" id="ssl_protocols"/> | |
392 список протоколов задаётся библиотекой OpenSSL | |
393 перед применением конфигурации сервера согласно имени, | |
394 запрашиваемого через SNI. | |
395 Таким образом, протоколы должны быть заданы только для сервера по умолчанию; | |
396 </listitem> | |
397 | |
398 <listitem> | |
399 директивы | |
400 <link doc="ngx_http_core_module.xml" id="client_header_buffer_size"/> | |
401 и | |
402 <link doc="ngx_http_core_module.xml" id="merge_slashes"/> | |
403 задействуются перед чтением строки запроса, | |
404 таким образом они используют конфигурацию сервера по умолчанию или | |
405 конфигурацию сервера, выбранного через SNI; | |
406 </listitem> | |
407 | |
408 <listitem> | |
409 в случае использования директив | |
410 <link doc="ngx_http_core_module.xml" id="ignore_invalid_headers"/>, | |
411 <link doc="ngx_http_core_module.xml" id="large_client_header_buffers"/> | |
412 и | |
413 <link doc="ngx_http_core_module.xml" id="underscores_in_headers"/>, | |
414 которые участвуют в обработке полей заголовка запроса, | |
415 выбор сервера дополнительно зависит от того, | |
416 была ли обновлена конфигурация сервера | |
417 согласно строке запроса или полю заголовка <literal>Host</literal>; | |
418 </listitem> | |
419 | |
420 <listitem> | |
421 ошибочный ответ будет обработан с помощью | |
422 директивы <link doc="ngx_http_core_module.xml" id="error_page"/> | |
423 в том сервере, который в настоящий момент выполняет запрос. | |
424 </listitem> | |
425 | |
426 </list> | |
427 </para> | |
428 | |
429 </section> | |
430 | |
431 | |
345 <section id="optimization" | 432 <section id="optimization" |
346 name="Оптимизация"> | 433 name="Оптимизация"> |
347 | 434 |
348 <para> | 435 <para> |
349 Точные имена, имена с масками, начинающиеся со звёздочки, | 436 Точные имена, имена с масками, начинающиеся со звёздочки, |