URL やクエリ文字列で安全に使用できるよう特殊文字をエンコード、またはパーセントエンコードされた文字列を可読テキストにデコードします。すべてブラウザ上で動作します。
| Character | Encoded | Description |
|---|---|---|
| (space) | %20 | Space character |
| ! | %21 | Exclamation mark |
| # | %23 | Hash / fragment |
| $ | %24 | Dollar sign |
| & | %26 | Ampersand |
| ' | %27 | Apostrophe |
| + | %2B | Plus sign |
| / | %2F | Forward slash |
| = | %3D | Equals sign |
| ? | %3F | Question mark |
| @ | %40 | At sign |
開発者向けツールは序章に過ぎません。OneStepToRank は、サービスエリア全体で Google ランキングを 24 時間監視し、戦略を自動的に最適化して常に上位を維持します。
無料で始めるURL エンコーディングは、正式にはパーセントエンコーディングと呼ばれ、URL で許可されていない、または特別な意味を持つ文字を、パーセント記号と2桁の16進数で安全に表現するプロセスです。この仕組みは RFC 3986(Uniform Resource Identifier)で定義され、URL がインターネット上で正しく伝送されることを保証します。例えば、スペース文字は %20、アンパサンドは %26、クエスチョンマークは %3F にエンコードされます。URL エンコーディングがなければ、ブラウザやサーバーはこれらの文字を構造的な URL コンポーネントとして誤解し、文字列として扱えません。
RFC 3986 は URL における文字を 2 つのカテゴリに分類します。非予約文字――英字 (A-Z, a-z)、数字 (0-9)、ハイフン、アンダースコア、ピリオド、チルダ――はエンコードせずに URL に使用できます。予約文字 には : / ? # [ ] @ ! $ & ' ( ) * + , ; = などがあり、URI 構文で特別な構造的意味を持ちます。これらの予約文字を URL コンポーネント(例: クエリパラメータの値)内のリテラルデータとして使用する場合は、パーセントエンコードが必要です。エンコードは文字の UTF-8 バイト表現の各バイトを %HH 形式に変換し、HH はバイトの十六進数値です。アクセント付き文字や絵文字などのマルチバイト UTF-8 文字は、複数のパーセントエンコードされたトリプレットを生成します。
主要なプログラミング言語はすべて URL エンコーディング用の組み込み関数を提供しています。JavaScript では encodeURIComponent() が URI コンポーネント用の文字列をエンコードし、encodeURI() は構造文字を保持しつつ完全な URI をエンコードします。Python では urllib.parse.quote() と urllib.parse.urlencode() が利用可能です。PHP には urlencode() と rawurlencode() があります。URL エンコーディングの適用タイミングと方法を正しく理解することは、セキュアなウェブアプリケーション構築に不可欠です。エンコードが不適切だとバグの原因となり、ユーザー入力をサニタイズせずに URL に直接埋め込むとインジェクション脆弱性につながります。