URL
HTML文書内のハイパーリンクは、リンクポイントを表わすアンカーテキストまたは画像と情報など資源の宛先(住所)を表わすURL(Universal Resource Locator)の組み合わせで構成され、読者はそのポイントをマウスでクリックすることによって、より多くの情報を得るため他の資源へジャンプできます。URLはプロトコル、情報のあるホスト名、文書(情報)のディレクトリ・パスまたはファイル名などから構成され、RFC1738で次のようなフォーマットに定められています。
scheme://host.domain[:port]/path/datanameScheme (スキーム)
使用する資源のプロトコルを指定し、下表のように決められています。
Schemeとプロトコルの関係
Scheme プロトコル ポート番号 http ハイパーテキスト転送プロトコル 80 ftp ファイル転送プロトコル 21 gopher Gopherプロトコル 70 nntp ローカルNNTPアクセスのみのUSENETニュース 119 telnet リモート・ログイン 23 wais 広域情報サーバ(WAIS) 210 mailto 電子メール none news USENETニュース none file ローカル・ファイル none
host.domain部
host.domain部はサーバのホスト名を表し、インターネット・ドメイン記法によって指定します。また、IPアドレスを使ってもアクセスが可能です。(例)
www.ncsa.uiuc.edu
www.yokochin.com www.ntt.jp www0.cern.ch
:port部
そのサーバにアクセスするためのポート番号を指定します。WWWではRFCによって定められたデフォルトのポート番号80を使用していれば、ポート部を指定する必要がありません。しかし、80番以外のポート番号を使用する場合は、その番号を指定しなければなりません(一般に80番以外のポート番号は8000や8080が使用されている)。
path/dataname部
文書(情報)を表わす場所です。パス名(ディレクトリ名)と書類(情報)ファイルから構成されます。WWWの場合、パス名のみはサーバによって定められたデフォルトのファイル(たとえばindex.html)やディレクトリ・リストを表示します。FTPの場合は、そのディレクトリのリストを表示します。ここで、空白や"?"や"/"などシステムで予約された文字を扱う場合、その文字を16進法で表さなければなりません。
URLで使用する
特殊文字一覧
文字 16進コード タブ %09 改行 %0a 空白(スペース) %20 @(at sign) %40 ? %3F / %2F & %26 % %25 + %2B たとえば、「Yasukazu Yokoi」という空白が入ったディレクトリなら、%20が空白を表す16進数であるため、
http://www.yokochin.com/Yasukazu Yokoi/index.htmlではなく、のように記述します。
http://www.yokochin.com/Yasukazu%20Yokoi/index.html
サービス別のURL表記方法
http
URLフォーマットは次のとおりです。
http://host:port/path#fragmentHTTP URLはWWWサービスを表します。ふつう、次のように表されます。
http://host:port/path?searchparthttp://www.yokochin.com/manual/URLが/(スラッシュ)で終わった場合、そのサーバで定められているディレクトリのデフォルト・ファイル(通常index.htmlと呼ばれるファイル)を表示します。ホスト名のみのホームページのファイル名もデフォルト・ファイルが使われます。ディレクトリの場合は最後のスラッシュがなくても同じように動作します。また、デフォルトのポート番号を使用していないWWWサーバを指定するなら(8000のTCPポートが使われているとして)ホスト名の後に:portを付け、次のように指定します。http://www.yokochin.com:8000/manual/#fragmentは文書内のポインタを表し、<a name>タグを使用してポインタを作成します。たとえばstructur.htmlという文書内の<a name="body">へジャンプさせたい場合は、次のように指定します。http://www.yokochin.com/manual/html/structur.html#bodyftp
URLフォーマットは次のとおりです。
ftp://user:password@host:port/path;type=typecodeFTP URLはAnonymous FTPサーバのファイルを指す場合に用いられます。ブラウザ(閲覧ソフト)はAnonymous FTPへ自動的にログインするため、アクセスしていることを意識しないかもしれませんが、実際はログインIDにanonymous、パスワードに電子メールアドレスを入力しているのです。ふつう、次のように表されます。ftp://ftp.uu.net/gnu/パス名がディレクトリの場合、ブラウザはディレクトリのリストを表示します。FTPサーバがAnonymous FTPでなければユーザ名とパスワードの指定が必要となり、次のように指定します。
ftp://ftp.uu.net/gnu/gcc-2.6.3.tar.gzftp://username:password@ftp.yokochin.com/text/hollywood.txttype=typecodeは、転送する際のタイプを指定します。
タイプコード 転送タイプ d ディレクトリ a ASCIIファイル i バイナリファイル
ftp://ftp.yokochin.com/products/lists;type=d
ftp://ftp.yokochin.com/products/router;type=aURLフォーマット: mailto:local-address@domainmailto URLは電子メールを送るアドレスを指す場合の用います。ブラウザがmailto URLをサポートしていれば、mailto URLを選択することによって、メール送信のためのウィンドウが表示されます。
mailto:mail@yokochin.comもし"%"を用いて中継ホストへ転送したい場合、"%"は特殊記号で使用されますから"%25"を用います。mailto:mail%25yokochin.com@general.netgopher
URLフォーマット: gopher://host:port/pathGopherはメニュー形式の情報サービスです。Gopher URLはWWWやFTPと同じような形式で記述されます。gopher://gopher.gan.ncc.go.jp/news
news URLはUsenetニュースを指定する場合に用いられ、次のように指定します。news:newsgroup-name最初の形式は購読したいニュースグループ名(例えばcomp.infosystems.www.annouce)を指定します。もし、ブラウザでニュース・クライアント機能をサポートしていれば、購読したりポストしたりすることができます。また、リモート・ニュースサーバの記事を明示的に指定する場合、schemeにnntpを使用し、以下のように指定します。なお、NNTPSERVER環境変数やクライアントの設定項目でリモート・ニュースサーバを指定すれば、ホスト名を必要としないnews schemeで指定することができます。
news:Message-IDnntp://host/newsgroup-name/artcle-numbertelnet
telnetログイン用のURLは以下のように設定します。telnet://user:password@host:portユーザ名とパスワードを省略して"telnet://host:port"を指定した場合、ログイン前の状態となります。wais
wais(Wide Area Information System)のURLはwaisのデータベース・リソース名を指定します。wais://host:port/databasefile
URLフォーマット: file:/pathまたはfile://localhost/pathローカルディスク上のファイルを指定する場合、fileというschemeを使用します。この表記方法は、FTPの時とよく似ています。ルート・ディレクトリからパス名を記述するだけです。
file:/home/users/yokochin/myhome.htmlこの記述は、一般的にWWWの起動時、たくさんURLを書き込んだローカルなファイルを選択する際、用いられます(自分のホームページ)。ブラウザによって、ローカルファイルを表わす手法はやや異なる場合があります。たとえばモザイクでは、
file://localhost/home/users/yokochin/myhome.htmlとなり、localhost(またはホスト名)が必要です。同じくネットスケープで、この文書をローカルファイルとして表示するなら、以下のような具合です。file:///C|Web/Html/Yokochin/manual/html/url.htmlネットスケープの場合、「~/.netscape/bookmark.html」を指定するとブックマークがホームページとなります。
まとめ
Scheme URLの例 http http://www.yokochin.com/index.html ftp ftp://ftp.uu.net/gnu/gcc-2.6.3.tar.gz gopher gopher://gopher.gan.ncc.co.jp/ mailto mailto:mail@yokochin.com news news:comp.infosystems.www.annouce nntp nntp://news.foo.com/comp.lang.c++ telnet telnet://cio.cisco.com wais wais://wais.abcd.com:10080