『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 文字ぐらいでシステム設計している、現場からお送りしました。