Fix nginx rate limit blocking accept: exact match for send request location

location /api/connections/request was a prefix match, unintentionally
rate-limiting /api/connections/requests/incoming, /outgoing, and
/requests/{id}/respond at 3r/m. This caused the accept button on toast
notifications to get 429'd when clicked immediately — the incoming
requests poll + outgoing poll had already exhausted the rate limit.

Changed to exact match (= /api/connections/request) so only the send
endpoint is rate-limited, not the entire /requests/* tree.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Kyle 2026-03-05 21:31:28 +08:00
parent b16bca919f
commit aeb30afbce

View File

@ -92,8 +92,8 @@ server {
include /etc/nginx/proxy-params.conf;
}
# Connection request rate-limited to prevent spam
location /api/connections/request {
# Connection request (send) exact match to avoid catching /requests/*
location = /api/connections/request {
limit_req zone=conn_request_limit burst=3 nodelay;
limit_req_status 429;
include /etc/nginx/proxy-params.conf;