[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

クロスドメイン (cross domain)

pointこの用語のポイント

point複数のドメインからデータを持ってくるよ

pointホームページの話で出てくる用語だよ

pointAjax(JavaScript)の話題で出てくるよ

スポンサーリンク

簡単に書くよ

クロスドメイン (cross domain)とは

ホームページを表示したときに、複数の場所(ドメイン)からデータを持ってくるようになっている状態のこと
です。

image piyo

詳しく書くよ

順番に見ていきましょう。

ドメイン名は「IPアドレスに付けた人間様向けの名前」ね。
「i-3-i.info」とか「example.com」とか、そんな感じの見た目です。

クロスドメイン

あなたがホームページを見るときには、まず、ホームページを見るときに使うソフトWebブラウザ)からホームページのファイルが置いてあるコンピュータ(Webサーバ)に対して「このページをおくれ」とお願いが出されます。

クロスドメイン2

そのお願いに対して、WebサーバさんからWebブラウザさんに「ほれ、そのページだよ」とお返事がきます。

クロスドメイン3

あとはWebブラウザさんが、お返事を画面上に表示します。

クロスドメイン4

これがホームページを見るときの流れです。

ドメイン名は「このページをおくれ」とお願いする先を指定するときに使う情報です。
例えば

http://wa3.i-3-i.info/index.html

と指定して、ホームページを表示したとしましょう。

このとき、みなさんの見えないところではドメイン名「wa3.i-3-i.info」に該当するコンピュータに対して「『index.html』という名前のファイルをおくれ」と、Webブラウザさんからお願いが出されています。

クロスドメイン5

それに対して、ドメイン名「wa3.i-3-i.info」に該当するコンピュータから「ほれ、そのページだよ」と「index.html」が送られてきます。

クロスドメイン6

あとはWebブラウザさんが、お返事を画面上に表示します。

クロスドメイン7

これで、あなたは「http://wa3.i-3-i.info/index.html」を見ることができます。

さて、ここで、ちょっと考えてみてください。
「http://wa3.i-3-i.info/index.html」を表示するときに必要なファイルは「index.html」だけでは、ありません。

例えば、画像が必要です。
実際に、ページ「http://wa3.i-3-i.info/index.html」では画像「http://wa3.i-3-i.info/img/wa3piyo2.png」を使っています。

ページを完成させるためには画像も必要です。
そこで「index.html」を受け取ったWebブラウザさんは、ドメイン名「wa3.i-3-i.info」に該当するコンピュータに対して、再度、お願いを出します。
今度は「『img』にある『wa3piyo2.png』をくれ」とお願いするのです。

クロスドメイン8

それに対して、ドメイン名「wa3.i-3-i.info」に該当するコンピュータから「ほれ、そのファイルだよ」と「wa3piyo2.png」が送られてきます。

クロスドメイン9

この流れを必要なファイル数分、繰り返すことで、1つのページが完成します。
結構、面倒くさいことをやっていますね。

クロスドメイン10

今回の流れでは、すべてのファイルを、ドメイン名「wa3.i-3-i.info」に該当するコンピュータから持ってきました。
実は、これを複数のコンピュータに分けることができます。

例えば、画像「wa3piyo2.png」を「wa3.i-3-i.info」ではなく「example.com」に置いたとしましょう。
そして

http://wa3.i-3-i.info/img/wa3piyo2.png

だった指定を

http://example.com/img/wa3piyo2.png

に変えました。

そうすると「http://wa3.i-3-i.info/index.html」を表示する際の流れは

1.「wa3.i-3-i.info」に該当するコンピュータから「index.html」をもらう
2.「example.com」に該当するコンピュータから「wa3piyo2.png」をもらう


になります。

クロスドメイン11

おっと、やり取りするコンピュータが2つに増えましたね。
ドメイン名「wa3.i-3-i.info」に該当するコンピュータとドメイン名「example.com」に該当するコンピュータの2つが、Webブラウザさんの求めに応じて、ファイルを送ってくれました。

このような、複数の場所(ドメイン)からデータを持ってくる状態が「クロスドメイン」です。

クロスドメイン12

なお、話を単純化するためにページ「index.html」と画像「wa3piyo2.png」を例に挙げましたが、この例のような構造で「クロスドメインがど~たら」な話になることは、まず、ありません。

「クロスドメインがど~たら、こ~たら」という話になるのは、JavaScriptAjaxに関する話が多いはずです。

Ajaxという仕組みを使うと「ほれ、そのファイルだよ」の結果を受け取って、さらに「このページをおくれ」のお願いを出すことができます。
他にも、いろいろ、あーだこーだができます。
よく分からない人は、(間違った説明ですが)Ajaxを使うと複数の「このページをおくれ」が同時に出せると思ってください。

クロスドメイン13

ただし、このときにお願いできる先は、1つのドメインだけです。
「wa3.i-3-i.info」に対して複数のお願いを同時に出すことはできますが「wa3.i-3-i.info」と「example.com」に同時にお願いを出すことはできません。
そのような技術的制約が、かかっています。

クロスドメイン14

ですが「wa3.i-3-i.info」と「example.com」に同時にお願いを出したいときもあるはずです。
そんなときに「クロスドメインの問題でうんちゃら」とか「クロスドメインの制約を回避するためにかんちゃら」とか、話されたりするのです。

ちょっと小難しい表現を使うと

主となるファイル(Ajaxが記述されている or 読み込まれるHTMLファイル)の取得元ドメイン以外に対してHTTPリクエストを投げることができないよう制限されている状態

を指して

クロスドメイン制約

と言ったりします。

「クロスドメイン」という用語を見かけるのは、そんな話題が多いと思います。

image piyo2

一言でまとめるよ

まぁ「クロスドメイン」って単語が出てきたら「複数の場所(ドメイン)からデータを持ってくる状態なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク