URL 文字列の最大長は2,000文字でバリデーション定義する方針
『URL 文字列の最大長は 2,000 文字以下でバリデーションを定義する』 という方針にしている話をご紹介します。
URL のバリデーションを定義するために最大文字数を調べてみました。
以下を読んで頂くとわかりますが、
など、ゆらぎがあるため、ギリギリを攻める必要は無いと判断しました。
ざっくり 2,000 文字以下でバリデーションを定義することにしています。
3.2.1 一般構文HTTP プロトコルでは、URI の長さにどんな制限も設けていない。 サーバは、自身が持つどんなリソースの URI も扱えなければならないし、もしそのような URI を生成する GET ベースのフォームを用意するなら、無制限の長さの URI を扱えるべきである。 もし、その URI がサーバが処理できるものよりも長ければ、サーバは 414 (Request-URI Too Long) ステータスを返すべきである (section 10.4.15 参照)。
ページの URL です。 ウェブ サーバーによっては、http などのプロトコルから始め、末尾にスラッシュを含める必要があります。 この値は 2,048 文字以下で指定する必要があります。引用元: sitemaps.org - プロトコル
URL の最大長は、2,083 文字 Internet Explorer
以上、URL の文字列の最大長は 2,000 文字ぐらいでシステム設計している、現場からお送りしました。