• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 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的服务,因此在 order 中以获得处理 HTTP/2 代理请求的能力,mod_proxy和mod_proxy_http2需要由服务器加载。

    mod_proxy_http2使用 HTTP/1.1 或 HTTP/2 处理传入的前端请求。在这两种情况下,代理到同一后端的请求都会尽可能通过单个 TCP 连接发送(即,当连接可以是 re-used 时)。

    警告:不会尝试将多个 HTTP/1.1 前端请求(配置为代理到同一后端)合并为属于同一 HTTP/2 请求的 HTTP/2 流。每个 HTTP/1.1 前端请求将使用单独的 HTTP/2 请求代理到后端(如果可能,尝试 re-use 相同的 TCP 连接)。

    该模块依赖于libnghttp2来提供核心 http/2 引擎。

    警告

    这个模块是实验性的。相对于其他标准模块,其行为,指令和默认值在发布之间会发生更多变化。建议用户查阅“CHANGES”文件以获取可能的更新。

    警告

    在有保护你的服务器之前不要启用代理。开放代理服务器对您的网络和整个 Internet 都是危险的。

    基本例子

    以下示例演示了如何为反向代理配置后端连接的 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(resp.http)expected/used。

    请求备注

    mod_proxy_http使用LogFormat或ErrorLogFormat中的%{VARNAME}n格式为 logging 创建以下请求注释:

    • proxy-source-port
      本地 port 用于连接到后端服务器。
    • proxy-status
      从后端服务器收到的 HTTP/2 状态。

    上篇:mod_proxy_http

    下篇:mod_proxy_scgi