Модуль Apache mod_proxy_http2
| Описание: | Модуль поддержки HTTP/2 для mod_proxy
|
|---|---|
| Статус: | Расширение |
| Идентификатор модуля: | proxy_http2_module |
| Файл исходного кода: | mod_proxy_http2.c |
| Совместимость: | Доступен в httpd 2.4.19 и более поздних версиях |
Краткое описание
mod_proxy_http2 поддерживает только HTTP/2, он не предоставляет никаких понижений до HTTP/1.1. Это означает, что бэкенд должен поддерживать HTTP/2, так как HTTP/1.1 не будет использоваться вместо него.
Этот модуль требует услуги mod_proxy, поэтому для получения возможности обработки запросов HTTP/2 прокси, mod_proxy и mod_proxy_http2 должны быть загружены сервером.
mod_proxy_http2 работает с входящими запросами с помощью HTTP/1.1 или HTTP/2. В обоих случаях запросы, проксированные к одному и тому же бэкенду, отправляются по одному TCP-соединению всякий раз, когда это возможно (а именно, когда соединение может быть повторно использовано).
Примечание: не будет попытки объединить несколько запросов HTTP/1.1 (настроенных на проксирование к одному и тому же бэкенду) в потоки HTTP/2, относящиеся к одному и тому же запросу HTTP/2. Каждый запрос HTTP/1.1 переднего плана будет проксирован к бэкенду с использованием отдельного запроса HTTP/2 (попытка повторного использования того же TCP-соединения, если это возможно).
Этот модуль полагается на libnghttp2 для предоставления основного движка http/2.
Предупреждение
Этот модуль является экспериментальным. Его поведение, директивы и значения по умолчанию могут изменяться от выпуска к выпуску по сравнению с другими стандартными модулями. Пользователям рекомендуется обратиться к файлу «CHANGES» для возможных обновлений.
Предупреждение
Не активируйте проксирование, пока не обезопасите свой сервер. Открытые прокси-серверы опасны как для вашей сети, так и для Интернета в целом.
Основные примеры
Примеры ниже демонстрируют, как настроить HTTP/2 для подключений к бэкенду для обратного проксирования.
HTTP/2 (TLS)
ProxyPass "/app" "h2://app.example.com" ProxyPassReverse "/app" "https://app.example.com"
HTTP/2 (открытый текст)
ProxyPass "/app" "h2c://app.example.com" ProxyPassReverse "/app" "http://app.example.com"
Схемы для настройки выше в ProxyPassReverse для обратного проксирования h2 (или h2c) протоколов являются стандартными https (соответственно http) , как ожидается/используется агентом пользователя.
Примечания к запросу
mod_proxy_http создает следующие примечания к запросу для ведения журнала с использованием формата %{VARNAME}n в LogFormat или ErrorLogFormat:
- proxy-source-port
- Локальный порт, используемый для подключения к серверу бэкенда.
- proxy-status
- Статус HTTP/2, полученный от сервера бэкенда.
© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_proxy_http2.html