HTTP ステータスコードとは、 Web サーバーがクライアント (ブラウザ) に返す 3 桁の数値コードです。リクエストの処理結果を示し、情報、成功、リダイレクト、クライアントエラー、サーバーエラーの 5 つのカテゴリに分類されます。
5 つのカテゴリは、 1xx (情報) 、 2xx (成功) 、 3xx (リダイレクト) 、 4xx (クライアントエラー) 、 5xx (サーバーエラー) です。短縮 URL サービスで特に重要なのは、 200 (成功) 、 301/302/307 (リダイレクト) 、 404 (Not Found) 、 429 (Too Many Requests) 、 500 (Internal Server Error) です。
実務で混同されやすいステータスコードの組み合わせを整理します。 301 vs 302 は「恒久的 vs 一時的」、 307 vs 302 は「メソッド保持 vs メソッド変更の可能性」、 403 vs 401 は「認可の問題 (権限なし) vs 認証の問題 (ログインしていない) 」、 404 vs 410 は「見つからない (復活の可能性あり) vs 完全に削除」です。
短縮 URL サービスでは、リダイレクト時のステータスコードの選択がサービスの根幹に関わります。クリック解析を重視するなら 302 、転送先を正規 URL として扱ってほしい恒久的な転送なら 301 、 API のレート制限超過時は 429 を返す、という使い分けが基本になります。エラーレスポンスには適切なステータスコードとともに、ユーザーにわかりやすいエラーメッセージを返すことが重要です。