411 Length Required는 Content-Length가 정의되지 않은 요청을 서버가 받아들이지 않는다는 뜻입니다. 클라이언트는 본문 크기를 나타내는 유효한 Content-Length 헤더를 붙여 요청을 다시 보낼 수 있습니다.
본문을 청크 전송 인코딩으로 보내는 POST, PUT 요청을 이를 허용하지 않는 서버에 보낼 때, 그리고 본문도 없고 Content-Length: 0도 없는 요청에서 발생합니다. Google을 비롯한 일부 대형 서비스는 Content-Length가 없는 빈 POST에 411로 응답합니다.
응답 예시
HTTP
HTTP/1.1 411 Length Required
Date: Fri, 06 Nov 2026 10:15:32 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 66
Connection: close
<p>POST requests require a <code>Content-length</code> header.</p> SEO 및 리디렉션 검사
크롤러는 본문이 없는 GET으로 페이지를 가져오므로 411은 SEO에 영향이 없습니다. 리디렉션 검사에서는 POST를 사용할 때 나타날 수 있습니다. 307이나 308을 따라갈 때는 요청 본문과 그 길이를 다시 보내야 하기 때문입니다.
주요 원인과 사용 사례
- HTTP 클라이언트가 본문도
Content-Length: 0도 없이POST를 보냅니다. - 스트리밍 업로드가
Transfer-Encoding: chunked를 사용하는데, 서버나 프록시가 길이를 요구합니다. - 프록시가
Content-Length헤더를 제거하거나 다시 씁니다.