web-dev-qa-db-ja.com

URLでタイトルの大文字を使用する必要がありますか?

現在、複数のWebアプリケーションを使用するサイト全体で一貫した命名規則を決定しています。歴史的に、私は「小文字のすべての文字!」を擁護してきました。 URLを作成する場合:

http://example.com/mysystem/account/view/1551

ただし、1年か2年以内に、特にASP.NET MVCを使い始めてからRESTベースのURLとの取引が増えたため、各セクションの最初の文字を大文字にするのが好きになりました。/wordをURL内に含めると、読みやすくなります(imho)。

http://example.com/MySystem/Account/View/1551

私たちは人々が必要を読んだり、URLを理解したりできる状況にないので、それ自体はドライバーではありません。私たちが求めている主なものは、合理的で理にかなった一貫したアプローチです。

何らかの方法で良いことを宣言する標準、または別の設定よりも優先される(少なくとも現実的にはモダンな)セットアップで遭遇する可能性のある問題はありますか?現在、この議論の一般的なコンセンサスは何ですか?

9
Amadiere

選択は主に表面的なものであるため(つまり、ほとんどのシステムは大文字と小文字を区別せず、ユーザーもそうではありません)、満足できる方だけを使用することをお勧めします。 アプリケーション内の一貫性が重要です、選択した方法ではありません。

ASP.Netを使用している場合は、PascalCaseアプローチを使用することをお勧めします。これは、Microsoftフレームワーク(システムライブラリなど)内に存在する傾向があるためですが、一貫性以外に「ベストプラクティス」はありません。

ほとんどのブラウザは、ユーザーからURLを隠すというかなり良い仕事をしており、ホームページとしてGoogleを持っている非常に多くの人々がFacebookを検索してクリックします-FacebookのURLを入力するのではなくブラウザ。

10
TZHX

内部のWebサイトについては、一貫性があればそれほど重要ではありません。

外部の一般向けのサイトでは、おそらくLinux/Apache Webホスティングの標準である小文字に固執する必要があります。記憶しているように、Firefoxの一部のバージョンでは、IEとは異なる方法でURLの大文字と小文字を処理するようです。これは、Chrome=にも適用されます。

一貫した大文字小文字の区別は、検索エンジン最適化にとっても重要です。 Googleがlower-case.aspxとLower-Case.aspxを重複するコンテンツを含む別のページとして表示しないようにする必要があります。彼らのアルゴリズムはこの誤ったアイデンティティを防止しようとしますが、それは時々起こり、ページにペナルティが課される可能性があります。

4
jfrankcarr

MVCを使い始めたことは、REST抽象化に「漏れ」てはいけません。単語間にダッシュを含むすべての小文字のURLを使用することには十分な理由があります。URI(ドメイン名ではない)は大文字と小文字が区別されます。すべてを小文字にし、ダッシュを使用して単語を区切ると、多くの推測作業と1回限りの作業がなくなり、プロキシサーバー(nginx、nodejs、Apache ...)を使用する場合、すべてが壊れ始めるわけではありません。突然大文字と小文字が区別されます。

"MiXeD-CaSeNaMeS。URLを大文字と小文字と小文字で混合してユーザーを混乱させないでください。小文字に固執してください。ユーザーが実際に大文字と小文字を混在させて入力する場合は、サーバー上でURLを正規化し、適切な大文字と小文字を提供してください。

2
Rick O'Shea

ユーザーが好きなように入力できる限り、それは本当に重要ではありません。個人的にはTitleCaseを好みますが、反対する人もたくさんいます。あなたが首尾一貫していれば、誰も気にしないでしょう。

Webサーバーが何らかの理由で表示できない場合は、http://foo.com/HelloWorldに行こうとするとhttp://foo.com/helloworld、すべて小文字を選択する必要があります。最近では完全なURLを入力することはめったにありませんが、大文字をいじる必要なく前面のアドレスにアクセスできる必要があります。

2
Maxpm

TLDは大文字と小文字を区別せず、Windowsパスは大文字とPascalの大文字と小文字の組み合わせを使用しますが、アプリケーションは着信リクエストパスに敏感です。この場合、_/format/JSON/_および_/format/json/_は、2つの異なる形式に対する要求であり、2つの異なるリソースを参照します。

私が見たときはいつでも http://www.somewebsite.com/Having/URLs/That-Look-Something-Like-This/ 、開発者の意図は主に少し異なるように見えることだと感じました残りの部分からですが、革新的ではなく、読みやすさを向上させるのにも役立ちません。特に[〜#〜] i [〜#〜]およびl[〜#〜] o [〜#〜]および、分析のために競合する他の文字。

URLの特定の部分だけを大文字にするなどの単純なものは可読性にプラスの影響を与える可能性があり、どこかがすでに近づいていると私は確信しているので、私はコンセンサスに気づいていません。 URLにレターケースを適用することに関しては、興味深いアイデアがあります。

しかし、ほとんどのWebサーバーはLinuxで実行されていること、および入力では大文字と小文字が区別されるため、開発者は常に着信テキストデータを標準化することになるため、私はそれがどのように行われているかに固執しています。

1

[〜#〜]決して[〜#〜]使いやすさの理由からタイトルの大文字小文字を使用してください! [〜#〜] mobile [〜#〜]電話で、大文字と小文字を区別して実行するために費やす時間とクリック数を想像してください!