less than 1 minute read

1줄 요약

HTTP/1.1은 이제 쓰지 말자.

상세 정리

  • 현상:
    • CDN 서버에서 421(Misredirected Request) 오류 발생
    • 최종 사용자 웹브라우저에서는 200 Ok 응답 수신, 하지만 실제 response된 파일은 비정상
  • 원인: 같은 host name을 사용하는 CDN이 2개일 때, SNI가 http/1.1에서는 불안정하게 동작(request를 엉뚱한 호스트로 보냄)
  • 조치: tcp 커넥션 재활용을 엄격하게 관리하는 http2 프로토콜만 사용하도록 설정
    • tcp 커넥션을 엄격하게 관리한다는 뜻은?
      • http/1.1은 request header의 host만 보고 SNI를 하기 때문에, tcp 커넥션을 재활용 할 경우 request를 host만 같고 엉뚱한 호스트로 보낼 수 있음.
      • http2는 Host/port/TLS 인증서를 모두 확인하고 tcp 커넥션을 재사용한다

물론 HTTP2에서도 421 오류는 발생할 수 있다. 그래도 http/1.1보다는 낫다.

EOD

20250903

Tags:

Categories:

Updated:

Leave a comment