相対 URL の絶対化
href に書いた相対パスが、どのアドレスになるかを一覧で確かめる。
基準のアドレスと、../ や /path、?query のような相対参照の一覧を貼り付けると、RFC 3986 の手順で絶対のアドレスに変換して一覧にします。../ の上がりすぎなども指摘します。データは端末の外へ送信しません。
相対参照を絶対のアドレスに変換する
入力した内容は送信されません。貼り付けた文字や選んだファイルは、お使いのブラウザの中だけで処理します。本サイトのサーバーや第三者へ送信・保存しません(通信を禁止する設定でページを配信しています)。
結果
エラー 0 件・警告 0 件・情報 0 件
指摘(エラー・警告・情報)
指摘はありません。
| 基準のアドレス | http://a/b/c/d;p?q |
|---|---|
| 相対参照の数 | 7 件 |
変換した絶対のアドレス
| 行 | 相対参照 | 絶対のアドレス |
|---|---|---|
| 1 | g | http://a/b/c/g |
| 2 | g/ | http://a/b/c/g/ |
| 3 | /g | http://a/g |
| 4 | ../g | http://a/b/g |
| 5 | ?y | http://a/b/c/d;p?y |
| 6 | #s | http://a/b/c/d;p?q#s |
| 7 | //g | http://g |
初期表示は入力例「RFC 3986 の基準で、よくある相対参照を解決する」の結果です。入力を変えるとその場で処理し直します。判定の根拠は仕様と根拠にまとめています。
ご利用にあたって
- ブラウザや他のソフトの実装によっては、規格と異なる結果になる書き方があります。重要なリンクは実際の環境でも確認してください。
使い方
- リンクを書いたページのアドレスを「基準のアドレス」に入力します(# 以降は使われません)。
- href や src に書いた相対の値を、1 行に 1 つずつ貼り付けます。
- 表の右の列が、基準に対して解決した絶対のアドレスです。
- 情報に出た「根より上へ上がる ../」は、書いた階層が実際より多い印です。意図どおりか見直してください。
入力例と結果
代表的な入力・境界の入力・壊れた入力の例です。例ごとに入力・出力・指摘と、その結果になる理由(検算)を載せています。
| 入力例 | 結果 |
|---|---|
| RFC 3986 の基準で、よくある相対参照を解決する | エラー 0 件・警告 0 件・情報 0 件 |
| ../ を書きすぎて根より上に出る | エラー 0 件・警告 0 件・情報 1 件 |
| 他のスキームの参照と、パスの途中のドット | エラー 0 件・警告 0 件・情報 1 件 |
| 基準のアドレスにスキームがない | エラー 1 件・警告 0 件・情報 0 件 |
このツールでできないこと(制約)
- RFC 3986 5.2 の厳格な手順による変換です。ブラウザの URL の解析(WHATWG URL)とは、バックスラッシュの扱いや http:g のような書き方などで結果が異なる場合があります。
- HTML の base 要素や複数の基準のアドレスは扱いません。基準は 1 つだけ入力します。
- 変換したアドレスが実際に存在するかは確認しません。アドレスへの接続は行いません。
- %エンコードや大文字小文字の整理(正規化)はしません。入力の書き方をそのまま残して結合します。
よくある質問
../ を書きすぎるとどうなりますか?
RFC 3986 の 5.4.2 の例では、根より上には上がらず根で止まります。たとえば基準が http://a/b/c/d の ../../../g は http://a/g になります。このツールも同じ結果にし、情報で知らせます。
// で始まる参照や ? だけの参照はどう変換されますか?
// で始まる参照は基準のスキームを使って別のホストを指します。? だけの参照は基準のパスを使ってクエリだけを差し替え、# だけの参照は基準のパスとクエリを使ってフラグメントだけを付けます(RFC 3986 5.2.2)。
貼り付けたアドレスは送信されますか?
変換はお使いのブラウザの中だけで行い、アドレスをサーバーや第三者へ送信・保存しません。ページは通信を禁止する設定で配信しています。公開前のページの内部のアドレスも安心して貼り付けられます。