[解決済み] URLにスペースを入れてもいいのでしょうか?
質問
URI (具体的には HTTP URL) には、1 つ以上の空白文字を含めることができますか?もし URL が
は
がエンコードされている場合
+
は一般的に守られている慣習なのでしょうか、それとも正当な代替案なのでしょうか?
特に、誰かが RFC を指し示し、URL にスペース は がエンコードされていることを示す RFC をどなたか教えてください。
質問の動機。 ある Web サイトをベータテストしているとき、いくつかの URL がスペースで構築されていることに気づきました。Firefox は正しいことをするようで、私を驚かせました。しかし、私は、開発者がこれらの URL を修正する必要性を感じるように、RFC を指し示すことができるようになりたいと思いました。
どのように解決するのですか?
以下の通りです。 RFC 1738 :
<ブロッククオート安全でない。
文字は様々な理由で安全でなくなることがあります。
スペース
文字が安全でないのは、重要なスペースが消えたり
重要でないスペースが入る可能性があるからです。
タイプセットされたり、ワープロソフトで処理されたりしたときに、重要なスペースが消えたり、重要でないスペースが入ったりする可能性があるためです。
文字
"<"
と
">"
が安全でないのは、これらが自由形式の URL の区切り文字として使われているからです。
自由形式のテキストで URL を囲むデリミタとして使われるため、安全ではありません。
"""
) は
は、URL の区切りとして使われます。 文字
"#"
は安全ではありません。
World Wide Web やその他のシステムで使用されているため、常にエンコードしておく必要があります。
というのは、WWWや他のシステムで、URLの後に続くかもしれないフラグメント/アンカー識別子からURLを区切るために使われるからです。
を区切るために使われるからです。 文字
"%"
は安全ではありません。
他の文字のエンコーディングに使用されるため、安全ではありません。 他の文字が安全でないのは
ゲートウェイや他のトランスポートエージェントは、時々そのような文字を修正することが知られているからです。
他の文字が安全でないのは、ゲートウェイや他のトランスポートエージェントがそのような文字を修正することがあるからです。これらの文字は
"{"
,
"}"
,
"|"
,
"\"
,
"^"
,
"~"
,
"["
,
"]"
そして
"`"
.
安全でない文字はすべて、常に URL 内でエンコードする必要があります。
. 例えば
例えば、文字
"#"
は URL 内でエンコードされなければなりません。
通常フラグメントやアンカーを扱わないシステムであっても
を使用する別のシステムにURLをコピーする場合、URLのエンコードを変更する必要がないようにするためです。
URL がそれらを使用する別のシステムにコピーされた場合でも、URL のエンコーディングを変更する必要がないからです。
関連
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] ブラウザによって異なるURLの最大長とは?
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] URI、URL、URNの違いは何ですか?
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] ページを再読み込みせずにURLを変更するにはどうすればよいですか?
-
[解決済み] JavaScriptでURLをエンコードする?
-
[解決済み] jQueryで現在のURLを取得する?
-
[解決済み] スペース文字をURLエンコードしています。+ または%20?
-
[解決済み] クエリ文字列パラメータのJava URLエンコーディング
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] XHTMLの自己完結型タグを除くオープンタグにマッチするRegEx
-
[解決済み] HTMLページからのリダイレクト
-
[解決済み] クリック可能なラベルを持つチェックボックスを作成するには?
-
[解決済み] divブロック内のテキストを(水平方向と垂直方向に)センタリングするにはどうすればよいですか?
-
[解決済み] クリアフィックスとは何ですか?
-
[解決済み] input type="file "ボタンのスタイリング
-
[解決済み] HTMLのid属性とname属性の違い
-
[解決済み] ラジオボタンをデフォルトで選択するには?[重複しています]
-
[解決済み] 入力フィールドに :before や :after 疑似要素を使用できますか?
-
[解決済み] 親ディバイスの高さを指定せずに、子ディバイスの高さを100%にする方法は?