C#で書くHTTPサーバ、について
まずHTTPサーバたる要件とは:
サーバが「HTTP/1.1 サーバ」を名乗っても良いのは、以下を満たす場合に限られます。
http://www.studyinghttp.net/intro
- Host ヘッダがないリクエストに、正しく 400 レスポンスを返す事ができる
- リクエスト URI として絶対 URI を受け入れる
- チャンク形式転送コーディングを正しく解釈できる
- 持続的接続、及び Connection ヘッダを正しく解釈できる
- 100 レスポンスを正しく使用できる
- Date ヘッダを正しく付加する (特に HTTP 日付)
- If-Modified-Since ヘッダ及び If-Unmodified-Since ヘッダを正しく解釈できる
- GET メソッド及び HEAD メソッドを正しく解釈できる
結構多いような、案外少ないような。