openresty / openresty/lua-nginx-module
disable keepalive per location with http2
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 11.8k
- Forks
- 2.1k
- Avg merge
- 6h 1m
- Merged PRs (30d)
- 6
Description
Hi
I apologize if this isn't the place for howto questions, but it may also be a feature request.
With http2 enabled we cannot use "connection: close" and keepalive_* directives per location (which makes sense),
but that's what I looking for:
- http2 on
- global (http/server) keepalive on
- except for the one location (on the same server)
must give content with 2xx code and close connection,
connection must start over every request,
must not reuse the port, new syn-ack.
I tried different things, ngx.exit() ngx.eof() at different phases etc, no luck. I guess we should send GOAWAY http2 frame somehow, but I don't understand how if possible.
If you have a solution or ideas, I would be very grateful.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the issue's attempted ngx.exit() and ngx.eof() approaches and how HTTP/2 connection handling exposes GOAWAY behavior. Confirm whether a per-location 2xx response can force a fresh connection and new SYN-ACK without violating HTTP/2 semantics; the issue names no files or tests, so the implementation scope is not yet defined.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, lua, nginx
- Domain
- networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100