apache / apache/apisix

[Feature Request] Support dynamic proxy_http_version configuration via plugin or metadata

Open
#13,026 1 comment 0 reactions 0 assignees View on GitHub
feature-request
Dominant language
Lua
Stars
17.1k
Forks
2.9k
Avg merge
3d 16h
Merged PRs (30d)
63

Description

### Description

Currently, the `proxy_http_version` in Apache APISIX is globally set (defaulting to 1.1) via the NGINX template. There is no supported way to dynamically change the HTTP version (e.g., to 1.0 or 1.1) based on the request host, route, or upstream context.

Attempting to set ngx.var.upstream_http_version in Lua does not affect the actual outbound request version (similar to the limitation discussed in [Kong Discussion #7330](https://github.com/Kong/kong/discussions/7330)).

Contributor guide

Open the contributing guide

Research direction

Start by inspecting the NGINX template where proxy_http_version is globally configured, then trace the Lua handling around ngx.var.upstream_http_version. Determine how a supported plugin or metadata path could select the outbound HTTP version by host, route, or upstream context; done means the dynamic configuration works without relying on the ineffective variable assignment.

Written by the indexing model from the issue text.

Assessment

Tech stack
lua, nginx
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.