web-dev-qa-db-ja.com

URL構造:小文字VS大文字

http://www.domain.com/Home/Article

今私は知っているので、常に小文字でURLを使うべきですが、技術的な理由については分かりません。私はあなたの専門家からこの概念を明確にするために学びたいのですが、なぜURLで小文字を使うのですか?大文字のURLの長所と短所は何ですか。

23
Code Lover

ドメイン部分は大文字と小文字が区別されません。 _GoOgLe.CoM_は機能します。大文字は好きなように追加できますが、通常はそうする理由はなく、以下のコメントに記載されているように、SEOランキングに悪影響を与える可能性があります。

パスの部分は、サーバー環境とサーバーに応じて、大文字と小文字が区別されます。通常、Windowsマシンは大文字と小文字を区別しませんが、Linuxマシンは大文字と小文字を区別します。つまり、小文字に固執する必要があります。そうしないと、突き止めるのが非常に難しいバグが発生するリスクがあります(開発サーバーでは問題となる不一致のケース)。

クエリ文字列部分はそのままサーバーで使用できます。大/小文字混合を好きなように使用したり、大/小文字を破棄したりできます(toLowerCase(...))。これは、base64でエンコードされたキーwillを使用しても機能することを意味します。ただし、ユーザーがそれを正しく入力することは期待できません。

ハッシュ部分(「フラグメント識別子」と呼ばれます)はクライアントコードでのみ使用でき、サーバーでは使用できません。 JavaScriptは、必要に応じてケースを区別し、ブラウザも区別します。 _url#a_はID aの要素までスクロールしますが、_url#A_はスクロールしません。

37
John Dvorak

私はこれに関して確立されたすべての知恵に同意しなければならないので、おそらく反対票を投じるでしょうが、

大文字と小文字が混在するすべてのURLを適切な大文字のURLにリダイレクトすると、前述のすべての問題が解決します。したがって、この議論は伝統と好みから来ているようです。 URLのポイントは、ユーザーフレンドリーなページの表現を持つことです。URLが大文字でわかりやすい場合は、それを使用しないのはなぜですか。比較:

moviesforyoutowatch.com/batman-vii-the-dark-knight-whatevers MoviesForYouToWatch.com/Batman-VII-The-Dark-Knight-Whatevers

大文字と小文字が混在するバージョンが目的に適していると思います。小文字の比較とリダイレクトでは解決できない技術的な理由がある場合は、それを共有してください。

11
Dirigible

技術的な理由を尋ねられたのは知っていますが、UXの観点からこれを検討する価値もあります。

大文字のURLがあるとします。引数として、これは印刷されたメディアで配布されています。ユーザーがそのURLをブラウザーに入力するようになると、そのケースに一致するように強制される可能性があります(または、Webサーバーが大文字と小文字を区別する場合は、指定されたケースに一致するように強制される)。ケースも検討してください。結局のところ、彼らはあなたのサーバーが大文字小文字を区別するかどうかを知りません、そして彼らは過去に大文字小文字を区別するウェブサーバーからの404を経験したかもしれません。

サーバーで大文字と小文字が区別され、大文字と小文字が混在するURLを使用している場合は、ユーザーがURLを誤って入力する可能性が高くなります。さらに、www.example.com/ContactというURLがあるとします。ユーザーがこれを見落とし、間違ったケースを使用すると、大文字と小文字の「c」が混同しやすくなります(特に手書きでコピーした場合)。コンテンツにアクセスできない場合があります。

これらすべてを念頭に置いて、www.example.com/News/Articles/FreeIceCreamForAllを検討してください。それほど難しくないキーボードでは、モバイルデバイスでこれを考慮すると、入力するのは非常に面倒です。

ユーザーがアドレスバーからURLを書き留めたい場合も、逆のことが言えます。彼らは、ケースを一致させる必要があると感じ、最終的にはより多くの作業を行い、エラーの可能性を高めます。

結論として; URLを小文字のままにします。

7
a gorsky