描述: | 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”文件以获取潜在更新。
在确保服务器安全之前,请勿启用代理。开放式代理服务器对您的网络和整个Internet都是危险的。
下面的示例演示如何为反向代理的后端连接配置HTTP / 2。
ProxyPass "/app" "h2://app.example.com" ProxyPassReverse "/app" "https://app.example.com"
ProxyPass "/app" "h2c://app.example.com" ProxyPassReverse "/app" "http://app.example.com"
上面配置的
ProxyPassReverse
用于反向代理
h2
(或h2c
)协议的方案是用户代理期望/使用的通常的
https
(resp。http
)。
mod_proxy_http
使用或中
的%{VARNAME}n
格式
创建以下请求记录以进行记录:
LogFormat
ErrorLogFormat