Q1: HTTP/1.1でheader sectionの終わりを示すのはどれ
Multiple Choice
**Explanation:**
**Terms:** header section, empty line, CRLF. HTTP/1.1では, headerの終端とbodyの開始は空行で区切られる.
**RFCを読むときの見方:** RFC 9112 では, まず「どこで header section が終わるか」を固定してから, 次に body 長の決め方へ進みます. 境界が曖昧だと, 同じ bytes を見ても proxy と origin で解釈がずれてしまいます.
**Correct (C):** 最後のheader fieldの後に, CRLFだけの空行が来ることでheader sectionが終了します. ここを基準に body の開始位置が決まるので, line ending の扱いは単なる書式ではなく framing そのものです.
**Options:**
- A (incorrect): Content-Lengthはbodyの長さのヒントで, header sectionの終端ではない.
- B (incorrect): HTTP/1.1はCRLFを行終端として定義している. LF-onlyは互換性や安全性の問題になり得る.
- C (correct): 空行が区切りになる.
**Related:** 終端解釈のズレはrequest smugglingの原因になり得ます. だから RFC 9112 は, 些細に見える改行規則をかなり丁寧に定義しています.