はじめに
この文書の目的
この文書は、Webサーバーにおける「ルートディレクトリ」についてやさしく解説します。意味や一般的な名称、実際の置き場所、サブディレクトリとの関係、似た言葉の「ドキュメントルート」との違いを順に説明します。初めて学ぶ方でも理解できるよう、具体例を交えています。
誰に向けているか
ウェブサイトを運営し始めた方、サーバー設定に触れる初心者、または用語の意味を確認したい方に向けています。専門用語は最小限にし、分かりやすい例で補います。
本書の読み方
まず第2章でルートディレクトリの基本的な意味を説明します。第3章でよく使われる名前や場所の例を示し、第4章でサブディレクトリとの関係を図式的に説明します。第5章ではドキュメントルートとの違いをわかりやすく整理し、第6章で簡単な比較表を提示します。順に読めば、全体像がつかめます。
注意点
OSやサーバーソフトによって表現が少し異なることがあります。具体的な操作は各環境のマニュアルに従ってください。
ルートディレクトリの意味
定義
ブラウザが「https://example.com/」のようなURLでアクセスしたとき、最初に参照される公開用フォルダがルートディレクトリです。ドメインのトップに対応する場所で、ここに置かれたファイルが直接公開されます。
具体例
- トップページ:index.html や index.php を置くと、URLだけで自動的に表示されます。
- 静的資源:画像(/images/logo.png)、CSS(/css/style.css)、JavaScript(/js/app.js)などを配置して参照します。
動作のイメージ
URL のパスはルートディレクトリ内のファイルやフォルダに対応します。たとえば「https://example.com/about.html」はルートディレクトリ内の about.html を参照します。
注意点
- プロジェクトのソースや秘密情報はルートディレクトリの外に置くべきです。公開されると危険です。
- サーバー設定でルートを変更すると、公開される内容が変わります。ホスティングやウェブサーバーの設定を確認してください。
一般的な名前や場所の例
レンタルサーバーでよく見る名前
- public_html / www
- 多くの共有レンタルサーバーで使われます。アップロードしたファイルはここから公開されます。
- cPanelの環境ではpublic_htmlが標準です。FTP接続時は最初にここが開くことが多いです。
LinuxのWebサーバー(Apache/Nginx)での初期パス
- /var/www/html
- 多くのディストリビューションで初期設定のドキュメントルートになります。htaccessや設定ファイルで変更できます。
ローカル開発やその他の例
- XAMPPなどのローカル環境ではhtdocs
- WindowsのIISではC:\inetpub\wwwroot
ホームディレクトリ配下の公開フォルダ
- ~/public_html
- ユーザー単位でウェブ公開する場合に使います。共有サーバーで見かけます。
注意点
- これらは“ルートディレクトリ”という呼び方をされることがありますが、厳密には「ドキュメントルート」(Web公開用の起点)を指します。ファイルの配置場所やアクセス権に注意して運用してください。
ルートディレクトリとサブディレクトリ
サブディレクトリとは
ルートディレクトリ直下に作る/imagesや/blogのようなフォルダはサブディレクトリです。コンテンツを種類ごとに分けて整理できます。例えば画像は/images、記事は/blogといった具合に分けると分かりやすくなります。
URLとファイルの対応
ウェブのルートが例:/var/www/htmlの場合、/images/logo.pngは実際のファイル/var/www/html/images/logo.pngに対応します。ブラウザではhttps://example.com/images/logo.pngのようにアクセスします。
ルートより上の階層の利用法
ルートディレクトリより上の階層(例:/var/www)は通常インターネットから直接公開しません。設定ファイルやバックアップ、APIキーなどの非公開データを置く用途に使います。公開したくないファイルは必ずルートの外に置いてください。
構成のコツと注意点
・名前は短く英数字で統一すると管理しやすいです。スペースや日本語は避けます。
・アクセス制限はパーミッションやサーバ設定で行います。機密ファイルは公開領域に置かないでください。
・パスは相対/絶対を使い分け、リンク切れに注意します。
類似用語「ドキュメントルート」
ドキュメントルートとは
ドキュメントルート(Document Root)は、Webサーバーの設定で「このフォルダ以下を公開する」と指定したディレクトリを指します。ブラウザからアクセスしたとき、実際に返されるファイルはこの中に置きます。例として、トップページのHTMLや画像、スクリプトなどです。
具体例
- Apache(Linux): /var/www/html
- Nginx(Linux): /usr/share/nginx/html または /var/www/site
- IIS(Windows): C:\inetpub\wwwroot
- レンタルサーバー: public_html や www という名前のフォルダ
これらはサーバーごと、または仮想ホストごとに設定できます。
ルートディレクトリとの違い
「ルートディレクトリ」は文脈で意味が変わります。OSのルート(/ や C:\)を指す場合もあれば、サイト単位のルート(そのサイトの最上位フォルダ)を指す場合もあります。一方でドキュメントルートはWeb公開用にサーバー設定で明確に指定されたフォルダです。サイト単位のルートと同じことが多いですが、混同しないように注意してください。
設定方法の概略
- Apache: 設定ファイルの DocumentRoot 指定や VirtualHost セクションで設定します。
- Nginx: server ブロック内の root 指定で設定します。
- コントロールパネル: カスタムドメインごとに公開フォルダを選べます。
また、インデックスファイル(index.html/index.php 等)を用意します。
セキュリティ上の注意
公開したくないファイルをドキュメントルートに置かないでください。設定ファイルや鍵、環境変数を外に出し、ファイルアクセス権限を適切に設定します。ディレクトリ一覧表示は無効にすることをおすすめします。
簡単な比較表
以下は「ルートディレクトリ」「サブディレクトリ」「ドキュメントルート」を分かりやすく比べた表と、項目ごとの簡単な説明です。
| 用語 | 意味 | 例 | 補足 |
|---|---|---|---|
| ルートディレクトリ | サイト公開領域の最上位フォルダ | /var/www/html や C:\inetpub\wwwroot | サイト全体の基点になります |
| サブディレクトリ | ルートの下にある分類用フォルダ | /blog /images /css | ページや資産を整理します |
| ドキュメントルート | サーバ設定で公開対象に指定したフォルダ | ApacheのDocumentRootやNginxのroot設定 | 必ずしもサーバ階層の最上位と一致しません |
各項目の補足説明:
– ルートディレクトリはサイトの「スタート地点」です。ここからファイル構成を決めます。
– サブディレクトリは用途ごとに分けるために作ります。例えば画像は/images、記事は/blogに置きます。
– ドキュメントルートはWebサーバーの設定で指定します。設定次第でルートディレクトリと同じ場合も違う場合もあります。












