11

つまり、http://www.example.com/とhttp://wwW.exAmPLe.COm/のどちらを使用するかは重要ですか?

最近、ホスト名に関して奇妙な問題が発生しています。Apache2.2+ PHP5.1.4 Webサーバーがあり、あらゆる種類のブラウザーからアクセスできます。特にIE6ユーザー(特にUA文字列に多数のBHOがあり、パターンがまだない場合)は、 http: //www.Example.com/からアクセスするときに、サイトへのアクセスに問題があるようです(Cookieが消え、JSがロードを拒否します) 。 、ただしhttp://www.example.com/ではありません

HTTPDNSのRFC、P3Pポリシー、Cookieの設定、SOPを確認しました。それでも、ドメイン名で大文字と小文字が区別されるという言及すら見たことがありません。

(パスとクエリ文字列では大文字と小文字が区別され(?x=fooとは異なり?x=Fooます)、適切に処理されます。コード内のドメイン名で解析/処理を行っていません)

私は何か間違ったことをしているのですか、それともこれは私が回避すべきブラウザとツールバーのがらくただけですか?

4

5 に答える 5

24

ドメイン名では大文字と小文字は区別されません。Example.comと同じIPに解決されeXaMpLe.CoMます。WebサーバーまたはブラウザーでHostヘッダーが大文字と小文字が区別されるものとして扱われる場合、それはバグです。

于 2009-06-02T16:25:39.167 に答える
5

いいえ、これで違いはありません。

URL RFC仕様(http://www.ietf.org/rfc/rfc1738.txt)を確認してください。セクション2.1から:

復元力のために、URLを解釈するプログラムは、大文字をスキーム名の小文字と同等に扱う必要があります

于 2009-06-02T16:27:09.370 に答える
4

質問を実際的な質問と言い、実際の問題を説明したので、答えは実際には「はい」です。

他の答えは、RFC仕様がホスト名について何を言っているかについて正しいです。技術的には、大文字と小文字を区別しないようにする必要があります。(実際、以前の規則では、トップレベルドメイン(TLD)はすべて大文字であると想定されていました...「apple.COM」のように)。

ただし、現実の世界では、OSリゾルバーや主要なブラウザーなどの成熟したソフトウェアがこれを正しく実現します。どんな種類の二次コードもこれを間違って処理し、あなたを台無しにする可能性があります。

于 2009-07-17T07:35:04.613 に答える
1

https://www.rfc-editor.org/rfc/rfc1035によると:

公式プロトコルの一部であるDNSのすべての部分について、文字列間のすべての比較(ラベル、ドメイン名など)は、大文字と小文字を区別しない方法で行われます。現在、このルールは例外なくドメインシステム全体で有効です。

それから、これは将来変わるかもしれないと言い続けます。COMドメインでは大文字と小文字が区別されないと想定しても安全だと思いますが、非ASCII文字の使用を許可する他のドメインは異なる場合があります。

于 2009-06-02T16:28:38.323 に答える
0

いいえ、プロトコル指定子に関して大文字と小文字の区別はありません。

これは、RFCforURLsで確認できます

2.1。URLの主要部分

スキーム名は一連の文字で構成されます。小文字の"a"-"z"、数字、および文字のプラス( "+")、ピリオド( "。")、およびハイフン( "-")を使用できます。復元力のために、URLを解釈するプログラムは、大文字をスキーム名の小文字と同等に扱う必要があります(たとえば、「HTTP」と「http」を許可します)。

于 2009-06-02T16:25:07.667 に答える