Apache. Документация на русском


Разделы:   1    2    3    4    5    6    7    8    9      10      11    12    13    14    15    16  

Раздел 10. Модули Апача

Пункты:   85    86    88    89    90    91    92    93    94    95    96    97    98    99    100    101    102    103    104    105    106    107    108    109    110    111    112    113    114    115    116    117    118    119    120    121    122    123    124    125    126    127    128    129    130    131    132    133    134    135    136    137    138    139    140    141    142    143    144    145    146    147    148    149    150    151    152    153    154    155    156    157    158    159    160    161    163    164    165    166    167    168    170    171    172    173    174    175    176    177    178    179    180      181      182    183    184    185    186    187    188    189    190    191    192    193    194    195    196    197    198    199    200    201    203    204    205    206    207    208    209    210    211    212    213  

 <         > 
  RU            EN  

Пункт 181. Модуль Apache mod_proxy_scgi

Этот модуль требует обслуживания mod_proxy . Он обеспечивает поддержку протокола SCGI версии 1.

Таким образом, чтобы получить возможность обработки протокола SCGI, mod_proxy он mod_proxy_scgi должен присутствовать и на сервере.

Предупреждение

Не включайте прокси, пока не защитите свой сервер. Открытые прокси-серверы опасны как для вашей сети, так и для Интернета в целом.

Примеры

Помните, чтобы следующие примеры работали, вы должны включить mod_proxy и mod_proxy_scgi .

Простой шлюз

 ProxyPass /scgi-bin/ scgi://localhost:4000/ 

Для сбалансированного шлюза требуется mod_proxy_balancer по крайней мере один модуль алгоритма балансировки нагрузки, например mod_lbmethod_byrequests , в дополнение к модулям прокси, перечисленным выше. mod_lbmethod_byrequests является значением по умолчанию и будет использоваться для этого примера конфигурации.

Сбалансированный шлюз

 ProxyPass "/scgi-bin/" "balancer://somecluster/"
<Прокси "balancer://somecluster">
 BalancerMember "scgi://localhost:4000"
 BalancerMember "scgi://localhost:4001"
</прокси> 

Переменные среды

В дополнение к директивам конфигурации, управляющим поведением mod_proxy , переменная среды может также управлять провайдером протокола SCGI:

прокси-scgi-pathinfo
По умолчанию mod_proxy_scgi не создает и не экспортирует переменную среды PATH_INFO . Это позволяет внутреннему серверу SCGI правильно определять SCRIPT_NAME и Script-URI и соответствовать разделу 3.3 RFC 3875. Если вместо этого вам нужно mod_proxy_scgi сгенерировать «наилучшее предположение» для PATH_INFO , установите этот env-var. Переменная должна быть установлена до того, как SetEnv она станет эффективной. SetEnvIf вместо этого можно использовать: SetEnvIf Request_URI . proxy-scgi-pathinfo


Директива ProxySCGIInternalRedirect

Описание:Включить или отключить внутренние ответы перенаправления от бэкэнда
Синтаксис: ProxySCGIInternalRedirect On|Off|Headername
По умолчанию: ProxySCGIInternalRedirect On
Контекст:конфигурация сервера, виртуальный хост, каталог
Положение дел:Расширение
Модуль:mod_proxy_scgi
Совместимость:Функция Headername доступна в версии 2.4.13 и выше .

Позволяет ProxySCGIInternalRedirect серверной части внутренне перенаправить шлюз на другой URL-адрес. Эта функция исходит из mod_cgi , которая внутренне перенаправляет ответ, если статус ответа равен OK ( 200 ) и ответ содержит Location (или сконфигурированный альтернативный заголовок) и его значение начинается с косой черты ( / ). Это значение интерпретируется как новый локальный URL-адрес, на который Apache httpd выполняет внутреннее перенаправление.

mod_proxy_scgi делает то же самое, что и mod_cgi в этом отношении, за исключением того, что вы можете отключить эту функцию или указать использование заголовка, отличного от Location .

Пример

 ProxySCGIInternalRedirect выключен
# Django и некоторые другие фреймворки будут полностью определять "локальные URL"
# устанавливается приложением, поэтому необходимо использовать альтернативный заголовок.
<Местоположение /django-приложение/>
 X-местоположение ProxySCGIInternalRedirect
</местоположение> 


Директива ProxySCGISendfile

Описание:Включить оценку заголовка псевдоответа X-Sendfile
Синтаксис: ProxySCGISendfile On|Off|Headername
По умолчанию: ProxySCGISendfile Off
Контекст:конфигурация сервера, виртуальный хост, каталог
Положение дел:Расширение
Модуль:mod_proxy_scgi

Директива ProxySCGISendfile позволяет серверной части SCGI разрешить обслуживать файлы непосредственно шлюзом. Это полезно для повышения производительности — httpd может использовать sendfile или другие оптимизации, которые невозможны, если файл поступает через внутренний сокет. Кроме того, содержимое файла не передается дважды.

Аргумент ProxySCGISendfile определяет поведение шлюза:

Off
Никакой специальной обработки не происходит.
On
Шлюз ищет вызванный заголовок ответа серверной части X-Sendfile и интерпретирует значение как имя файла для обслуживания. Заголовок удаляется из окончательных заголовков ответа. Это эквивалентно ProxySCGISendfile X-Sendfile .
что-нибудь еще
Аналогичен On , но вместо жестко заданного имени заголовка X-Sendfile в качестве имени заголовка используется аргумент.

Пример

 # Использовать заголовок по умолчанию (X-Sendfile)
ProxySCGISendfile включен
 
# Использовать другой заголовок
ProxySCGISendfile X-Send-Static 


 <         > 

Пункты:   85    86    88    89    90    91    92    93    94    95    96    97    98    99    100    101    102    103    104    105    106    107    108    109    110    111    112    113    114    115    116    117    118    119    120    121    122    123    124    125    126    127    128    129    130    131    132    133    134    135    136    137    138    139    140    141    142    143    144    145    146    147    148    149    150    151    152    153    154    155    156    157    158    159    160    161    163    164    165    166    167    168    170    171    172    173    174    175    176    177    178    179    180      181      182    183    184    185    186    187    188    189    190    191    192    193    194    195    196    197    198    199    200    201    203    204    205    206    207    208    209    210    211    212    213  

Рейтинг@Mail.ru