431

Request Header Fields Too Large

개요

431 Request Header Fields Too Large는 요청 헤더가 개별적으로 또는 전체적으로 서버가 허용하는 크기를 넘었다는 뜻입니다. 가장 흔한 범인은 지나치게 커진 쿠키와 비대한 Authorization/커스텀 헤더입니다.

많은 서버는 헤더 전체를 담는 버퍼 크기(보통 8~16KB)를 제한합니다. 세션에 데이터를 잔뜩 쌓아 쿠키가 커지거나, 여러 서드파티 쿠키가 누적되면 이 한도를 넘겨 431이 발생합니다.

언제 발생하나

요청 / 응답 예시

요청
GET /dashboard HTTP/1.1
Host: app.example.com
Cookie: session=...<50 KB of cookies>...
Authorization: Bearer <very long token>
응답
HTTP/1.1 431 Request Header Fields Too Large
Content-Type: text/plain

One or more header fields exceed the allowed size.

코드로 보기

# Raise buffers that hold large headers/cookies (or reduce cookie size instead)
server {
  large_client_header_buffers 4 32k;
}
# See exactly which headers are being sent (look for bloated Cookie)
curl -v https://app.example.com/dashboard 2>&1 | grep -i '^> '

흔한 원인

해결 방법

실무 참고

관련 상태코드

관련 헤더

스펙 근거