Mercurial > hg > nginx-site
comparison xml/ru/docs/http/ngx_http_proxy_module.xml @ 1990:a108f1ff1690
Better documented proxy_pass with variables (ticket #803).
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Fri, 26 May 2017 18:58:02 +0300 |
parents | 7bf1a73248f5 |
children | 40467656998b |
comparison
equal
deleted
inserted
replaced
1989:7bf1a73248f5 | 1990:a108f1ff1690 |
---|---|
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> | 8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> |
9 | 9 |
10 <module name="Модуль ngx_http_proxy_module" | 10 <module name="Модуль ngx_http_proxy_module" |
11 link="/ru/docs/http/ngx_http_proxy_module.html" | 11 link="/ru/docs/http/ngx_http_proxy_module.html" |
12 lang="ru" | 12 lang="ru" |
13 rev="61"> | 13 rev="62"> |
14 | 14 |
15 <section id="summary"> | 15 <section id="summary"> |
16 | 16 |
17 <para> | 17 <para> |
18 Модуль <literal>ngx_http_proxy_module</literal> позволяет передавать | 18 Модуль <literal>ngx_http_proxy_module</literal> позволяет передавать |
1377 Кроме того, в качестве адреса можно указать | 1377 Кроме того, в качестве адреса можно указать |
1378 <link doc="ngx_http_upstream_module.xml">группу серверов</link>. | 1378 <link doc="ngx_http_upstream_module.xml">группу серверов</link>. |
1379 </para> | 1379 </para> |
1380 | 1380 |
1381 <para> | 1381 <para> |
1382 В значении параметра можно использовать переменные. | |
1383 В этом случае, если адрес указан в виде доменного имени, | |
1384 имя ищется среди описанных групп серверов | |
1385 и если не найдено, то определяется с помощью | |
1386 <link doc="ngx_http_core_module.xml" id="resolver"/>’а. | |
1387 </para> | |
1388 | |
1389 <para> | |
1382 URI запроса передаётся на сервер так: | 1390 URI запроса передаётся на сервер так: |
1383 <list type="bullet" compact="no"> | 1391 <list type="bullet" compact="no"> |
1384 | 1392 |
1385 <listitem> | 1393 <listitem> |
1386 Если директива <literal>proxy_pass</literal> указана с URI, | 1394 Если директива <literal>proxy_pass</literal> указана с URI, |
1443 <para> | 1451 <para> |
1444 В этом случае URI, указанный в директиве, игнорируется, и на сервер | 1452 В этом случае URI, указанный в директиве, игнорируется, и на сервер |
1445 передаётся изменённый URI запроса целиком. | 1453 передаётся изменённый URI запроса целиком. |
1446 </para> | 1454 </para> |
1447 </listitem> | 1455 </listitem> |
1456 | |
1457 <listitem> | |
1458 При использовании переменных в <literal>proxy_pass</literal>: | |
1459 <example> | |
1460 location /name/ { | |
1461 proxy_pass http://127.0.0.1$request_uri; | |
1462 } | |
1463 </example> | |
1464 В этом случае если в директиве указан URI, | |
1465 он передаётся на сервер как есть, | |
1466 заменяя URI первоначального запроса. | |
1467 </listitem> | |
1448 </list> | 1468 </list> |
1449 </para> | |
1450 | |
1451 <para> | |
1452 Имя сервера, его порт и передаваемый URI можно также полностью задать | |
1453 с помощью переменных: | |
1454 <example> | |
1455 proxy_pass http://$host$uri; | |
1456 </example> | |
1457 или даже так: | |
1458 <example> | |
1459 proxy_pass $request; | |
1460 </example> | |
1461 </para> | |
1462 | |
1463 <para> | |
1464 В этом случае имя сервера ищется среди описанных | |
1465 <link doc="ngx_http_upstream_module.xml">групп серверов</link> | |
1466 и если не найдено, то определяется с помощью | |
1467 <link doc="ngx_http_core_module.xml" id="resolver"/>’а. | |
1468 </para> | 1469 </para> |
1469 | 1470 |
1470 <para> | 1471 <para> |
1471 Проксирование <link doc="websocket.xml">WebSocket</link> требует особой | 1472 Проксирование <link doc="websocket.xml">WebSocket</link> требует особой |
1472 настройки и поддерживается начиная с версии 1.3.13. | 1473 настройки и поддерживается начиная с версии 1.3.13. |