ウェブブラウザ のアドレスバー に表示された、Wikipedia 英語版 メインページ のURL
Uniform Resource Locator (ユニフォーム リソース ロケータ、URL )または、統一資源位置指定子 (とういつしげんいちしていし)とは、インターネット 上のリソース (資源)を特定するための形式的な記号の並び。WWW をはじめとするインターネットアプリケーションにおいて提供されるリソースを、主にその所在を表記することで特定する。なお、ここでいう、「リソース 」とは、(主にインターネット上の)データやサービスを指し、例えばウェブページ の保存場所や電子メール の宛先といったものが該当する。
ティム・バーナーズ=リー が1991年 に発表した論文[要文献特定詳細情報 ] でUniversal Resource Locatorと命名し、初期はその名が使われたが[ 1] 、1994年に公開されたRFC 1738 より現在の「Uniform Resource Locator 」という名称となっている。
URLを含む一般概念としてURI がある[ 2] 。
URLはリソースの場所を特定する「住所 」のようなものだと例えられることがある。
日本 ではURLのことを俗に「ホームページ アドレス」と呼ぶことがある[ 3] [ 4] 。「ホームページアドレス」はMACアドレス やIPアドレス 、メールアドレス 等とは異なり、RFC などの文書で規定されている標準的な技術用語ではない。
ウェブブラウザ には、URLを入力して移動したり、現在表示されているウェブページのURLを表示・取得したりすることのできるテキストボックス またはコンボボックス のようなGUI部品(ウィジェット )が用意されており、一般的にアドレスバー と呼ばれる[ 5] [ 6] 。モダンなウェブブラウザではアドレスバーと検索ボックスが統合され、URLだけでなく検索キーワードを入力することもできる。
URLの形式
例
https :
//ja.wikipedia.org
/wiki/Wikipedia
↑
↑
↑
|
|
パス名
|
ホスト名
(ディレクトリ 名を含む)
スキーム(プロトコル 名ではない)
「https://ja.wikipedia.org/wiki/Wikipedia
」は典型的なURLの例である。URLはこのような特徴的な形式の文字列であり、WWWが普及した今日にあっては頻繁に目にするものである。
上のURLは「ウィキペディア日本語版 の中にあるウィキペディア について説明している項目」というリソースを特定する。
スキーム 名 https
はこのリソース(項目)を入手する為にはHTTPS を使うべきであることを表す。
ja.wikipedia.org
はこのリソースが保管されているホスト を表すホスト名である。
残りの/wiki/Wikipedia
の部分は最終的にリソースを特定するための詳細である。ホストのファイルシステム 内でのファイル 名あるいはディレクトリ 名に対応する場合が多いが、そうでない場合もある。
大まかに言えば、上のURLは「ja.wikipedia.org というコンピュータに接続してHTTPS の決まり事に従って/wiki/Wikipedia という名前のデータを要求すれば目的の物が手に入る」と読むことができる。
なお、スキーム名の後のダブルスラッシュ//
の2文字は有意義に使われる機会が少ない。2009年10月、URLの提案者であるティム・バーナーズ=リーは「できることなら取り除きたい」と発言している[ 7] 。
一般形式
一般にURLは
(スキーム名): (スキームごとに定められた何かの表現形式)
という形をしている。スキーム名としてはプロトコル 名が用いられていることが多いがそれに限らない。RFC 1738 には次のスキーム名が定義されている。
IANA に登録されたスキーム[ 8] が公式に認められたスキームであると見なされており、RFC 7595 で登録手続きなどについて規定されている。この他にもjavascriptスキーム(この後ろに書かれた内容がJavaScript 言語によって書かれたスクリプトであることを示す)のように広く普及している非公式なスキームもある[ 9] 。
URLの、スキーム名以降の部分はスキームごとに定められた規則に従う。例えば、電子メールの宛先を表すmailtoスキームのURLの場合、
mailto:example@example.com
のようになっており、先に挙げたhttpsスキームの例とは大きく異なっている。
httpsやftpのような特定のホストにIP 接続する類のスキームでは次のような共通の形式が使われている。この表記では、接続するプロトコルは、呼び出している機能のプロトコルと同じものが使用される。
//<user>:<password>@<host>:<port>/<url-path>?<query-string>
<user>
- ホストに接続するときに使うユーザー名。必要がなければ省略可。
<password>
- ユーザー名に対応するパスワード。必要がなければ省略可。
<host>
- ホスト名 、FQDN またはIPアドレス
https://192.168.10.2/ ← IPv4の場合
https://[fe80::a1b3:125d:c1f8:4781]/ ← IPv6の場合
<port>
- 接続先ポート番号。ホストのどのポートに接続するかを表す。スキームがデフォルト のポート番号を規定している場合は省略してもよい。
<url-path>
- ホストに要求するパス。ホストのファイルシステムにおけるパスと対応する場合が多いが、そうでない場合もある。必要がなければ省略可。
<query-string>
- 接続先が利用するパラメータ。?
に続いて任意の形式でデータを記述する[ 10] 。省略可。正式名は「URL-query string 」。
標準
WHATWG がURL Living Standard を策定している。これは、RFC 3986 やその他URLに関係するRFCを置き換える標準仕様である。ただし、廃止などにする手続きが行われたわけではないので、各種RFCも状態としては有効である。
なお、cURL 作者のDaniel SteinbergはURL Standardについても不十分という意見を発している[ 11] 。
RFC
URLに関連するRFC (およびその邦訳)には次のものがある。
RFC 1983による"address "の語釈は次の通り(プレーンテキスト の原文に太字 の効果を付与し、1行文字数などの体裁を調整)。
There are four types of addresses in common use within the Internet. They are email address; IP, internet or Internet address; hardware or MAC address; and URL . See also: email address, IP address, internet address, MAC address, Uniform Resource Locator .
先頭の2文の大意は、「インターネットにおけるアドレス には主に4種類ある。電子メール アドレス、IPアドレス 、MACアドレス 、そしてURL である」となるが、参考までに、TR X 0055:2002による訳を次に引用する(太字 は引用者)。
インターネット(the Internet)内部で共通に使用するアドレス には4つの型がある。それらは、電子メールアドレス、IPアドレス又はインターネットアドレス、ハードウェアアドレス又はMACアドレス、及びURL とする。"2.147 email address"、"2.252 IP address"、"2.229 internet address"、"2.287 MAC address"及び"2.479 Uniform Resource Locator (URL )"も参照すること。
W3C Documents
W3C が発行しているURLについての文書には次のものがある。
URL (2017年、ワーキンググループノート): WHATWG URL Standardのスナップショットとなっている。
恒久リンク
恒久リンク [ 12] (英 : permanent link )とは恒久的なURLのこと。主にコンテンツ管理システム 、とりわけブログ ツールにおいて、個々の記事へのURLが更新作業を繰り返しても変わらないしくみを意味する。一般的に、URLは永久に変化しないことが好ましい[ 13] [ 14] 。
特定の記事あるいはウエブページに対する直接リンク(直リンク とも呼ばれる)が増大するにつれ、一方でリンク切れ [ 15] (英 : dead link )の大量発生も大きな問題となっている。そのような事態を避けるためコンテンツの更新作業が行われ、なおかつ更新履歴が保存されるシステムにおいて、有効なコンテンツへのURLが変動しないように、データへの参照番号などを固定化するとともに参照方法を簡略化し、URLが冗長にならないことが望ましいとされる。
そのための特殊な手法としてApacheウエブサーバ の場合、mod_rewrite を使ってURLを書き換える、PATH_INFOからパラメータを取得してプログラムを動作させるなどがある。特にmod_rewriteの場合は、PHPによる動的コンテンツを静的なhtmlコンテンツに見せかけることが容易にできてしまう。またPATH_INFO方式の場合は動的コンテンツをサブディレクトリに見せかけることができる。このほかいわゆる携帯 サイトではURLを短縮化する様々な工夫が施されるようになっている。いずれにしてもURLのみならずオリジナルのファイル拡張子を隠蔽することで、スクリプト を画像や音楽ファイルのように装うなど悪用のおそれもあるので、ホスティングサーバ においては利用が制限されるケースが多い。
脚注
関連項目
外部リンク