- 更新日: 2017年03月30日
- 公開日: 2015年12月08日
ゼロから始めるPHP講座Vol04 Webページの仕組み
ゼロから始めるPHP講座Webページの仕組み
ブラウザで見ているWebページとは
GoogleやYahooなどを代表とした無数にあるWebページは、それぞれの企業が管理しているサーバ(PC)のファイルをブラウザで見ています。
「1章:プログラムを作成」ではhttp://User名.lesson.codecamp.jp/hello.php をブラウザで閲覧しましたが、
- インターネット住所[User名.lesson.codecamp.jp]にあるhello.phpファイルを見せてくださいと要求(リクエスト)する
- User名.lesson.codecamp.jpにあるサーバ(PC)がhello.phpファイルを応答(レスポンス)する
この2つのやり取りが行われた結果として、hello.phpファイルを閲覧しております。
ブラウザと企業が管理するサーバ(PC)の要求(リクエスト)と応答(レスポンス)のやり取りを図で表すと、以下のようになります。
インターネットを通じて世界中のサーバ(PC)と繋がっており、URLで指定した住所にあるサーバ(PC)のファイルを取得できます。
URLの仕組み
各企業が管理しているサーバのファイルにアクセスすることでWebページを閲覧していますが、どの企業のどのファイルにアクセスするかはURLで指定しています。
例としてhttp://php.net/manual/ja/index.phpというURLの場合は、
となり、「php.net」で住所、「manual/ja/index.php」で閲覧するファイルを指定しています。
このようにURLの仕組みは、http:// の後、最初の/(スラッシュ)が出てくるまでがインターネット上の住所、それ以降が閲覧するファイルを示しています。
http://アクセスするサーバ(PC)のインターネット住所/ファイルの保存場所 及び ファイル名
インターネット住所がどのような仕組みになっているかは割愛しますが、「ファイルの保存場所及びファイル」については、後に詳細を説明します。
Webページを見せるために必要なもの
Webページをインターネット上に公開して見れるようにするには専用のソフトウェアが必要であり、CodeCampの講義で利用しているサーバ(PC)では、ApacheというWebサーバソフトウェアを利用しています。
ApacheのようなWebページを見れるようにする専用のソフトウェアをインストールし、Webページを表示できるようにしたPCをWebサーバと呼びます。
つまり皆さんが使っているPCもApacheのようなソフトウェアをインストールし、インターネット上へ公開するために必要な設定を行うことでWebサーバとすることが可能です。
ドキュメントルート
ブラウザで閲覧することができるのは、Apacheなど専用のソフトウェアの設定で指定したディレクトリ(フォルダ)以下にあるファイルとなり、このディレクトリ(フォルダ)のことをドキュメントルートと呼びます。
CodeCampの講義でオンラインエディタによるファイル作成又はFileZillaによるファイルアップロードを行う際、htdocsというディレクトリ(フォルダ)を利用していると思いますが、Webサーバの設定で、このhtdocs以下をドキュメントルートと設定しています。
例えばhttp://User名.lesson.codecamp.jp/hello.phpの場合、
「User名.lesson.codecamp.jp」が住所
「hello.php」がファイルの保存場所及びファイル名となっていますが、実際URLで指定したhello.phpファイルがサーバ(PC)のどこにあるかというと、
「ドキュメントルート + URLで指定したファイルの保存場所 及び ファイル名」
にあり、/htdocs/hello.phpとなります。
ドキュメントルートはブラウザからURLを指定してアクセス(閲覧)できるディレクトリ(フォルダ)であり、Webページ開発の際はこれを意識をする必要があります。
現在はhtdocsの中にディレクトリ(フォルダ)を作成していないと思いますが、htdocsの中にディレクトリ(フォルダ)を作成し、そこにファイルを置いた場合は、ディレクトリを含めてファイルをURLで指定する必要があります。
なおサーバ(PC)の中身を世界中の人に全て見られたら困るので、ドキュメントルートは必要最低限のみ公開設定するのが一般的です。
CodeCamp講義の場合、includeというディレクトリはドキュメントルート外となり、ここに作成したファイルをユーザがURL指定でブラウザから閲覧することはできません。
課題
以下のURLにアクセスした際、hello.phpと同じファイルが表示されるよう、ディレクトリ及びファイルを作成してください。
URL: http://User名.lesson.codecamp.jp/challenge/challenge_document.php
NEXT LESSON ☛ 関数の基礎
PREV LESSON ☛ 変数の使い方
- この記事を書いた人
- CodeCampus編集部