ドキュメントルートとは|htdocsの場所/httpd.confの場所|設定の変更・調べ方

ドキュメントルートとは

ドキュメントルートとは、Webサイトで公開されるHTMLファイルや画像データなどが設置される場所のことを指します。多くのWebサーバーでは「htdocs」という名称のフォルダやディレクトリが用いられることが一般的です。ドキュメントルートとして指定されたディレクトリには、Webブラウザのほか、HTTPやFTPなどのプロトコルによって外部からのアクセスが可能となります。

要するに、ドキュメントルートはWebサイト上で公開したいファイルを設置する場所のことを言います。

# Webサイトアクセス時のURL
http://marycore.jp/index.html
http://marycore.jp/style/style.css

# 実際にサーバー上で読み込まれるディレクトリやファイル
/usr/local/apache2/htdocs/index.html
/usr/local/apache2/htdocs/style/style.css

# これがドキュメントルート
/usr/local/apache2/htdocs/
参考:# ドキュメントルートへのアクセス例

目次

htdocsの正式名称

htdocsはHypertext Documentsの略です。多くのWebサーバーではこのhtdocsがドキュメントルートとしに指定されています。その他のhtdocsに相当するディレクトリ名については「# htdocs/ドキュメントルートの場所(OS別)」を参考にしてください。

ドキュメントルートへのアクセス例

例えば、Webサイトへ「http://marycore.jp/index.html」というアドレスでアクセスが行われた場合には、Webサーバー側でドキュメントルートとして設定されたhtdocsフォルダ内のindex.htmlファイルが読み込まれ、Webブラウザ上にその内容が表示されることになります。

http://marycore.jp/index.html
↓
/usr/local/apache2/htdocs/index.html

ドキュメントルートとして指定されたディレクトリはルートディレクトリという扱いとなり、小ディレクトリ内のファイルへのアクセスも可能となります。

http://marycore.jp/assets/style.css
↓
/usr/local/apache2/htdocs/assets/style.css

ドキュメントルートの確認と変更

ドキュメントルートのより具体的な場所はOSの種類やWebサーバーの環境によって異なっており、その設定はhttpd.confなどの設定ファイルにDocumentRootという項目の形で記述されています。ドキュメントルートの変更時にはDirectoryディレクティブ内のパスも同じように変更する必要があります。

# /etc/apache2/httpd.conf

DocumentRoot "/usr/local/apache2/htdocs"

<Directory "/usr/local/apache2/htdocs">
  XSendFilePath "/usr/local/apache2/htdocs"
</Directory>
httpd.confの場所(OS別)
httpd.confの場所を調べる方法

htdocs/ドキュメントルートの場所(OS別)

環境によってドキュメントルートの名称や設置場所が異なることがあります。とりわけLinuxの場合はディストリビューションの違い(Debian系、RedHat系)によって場所や名称が大きく異なっています。

# Linux 環境の場合
/var/www/html
/usr/local/apache2/htdocs

# Windows XAMPP 環境の場合
C:\xampp\htdocs

# Mac MANP 環境の場合
/Applications/MAMP/htdocs

# Mac 標準 環境の場合
/Library/WebServer/Documents

このように、htdocsやドキュメントルートがどこにあるかはOSによって異なります。なお、デフォルトのドキュメントルートの場所は「# ドキュメントルートの確認と変更」で確認することができます。

httpd.confの場所(OS別)

Linux環境の場合はディストリビューションの違いによって場所や名称が異なっていたり、分散している場合があります。

# Linux 環境の場合
/etc/httpd/conf/httpd.conf
/etc/apache2/httpd.conf
/etc/apache2/apache2.conf
/etc/apache2/sites-available/000-default.conf

# Windows XAMPP 環境の場合
C:\xampp\apache\conf\httpd.conf

# Mac MANP 環境の場合
/Applications/MAMP/conf/apache/httpd.conf

# Mac 標準 環境の場合
/etc/apache2/httpd.conf

httpd.confの場所を調べる方法

端末・ターミナル上でhttpd -Vコマンドを実行することで、httpd.confの場所を知ることができます。同コマンドの実行結果に表示されるSERVER_CONFIG_FILEという項目にhttpd.confの設置場所が記載されています。

user$ httpd -V
Server version: Apache/2.4.16 (Unix)
Server compiled with....
 -D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"
広告