インストール先ディレクトリレイアウト --- configure.layout ---

1. configureスクリプトのオプションでインストール先を変更できる

 Apacheの関連ファイルは、標準ですべて/usr/local/apacheディレクトリ下にインストールされる。このインストール先ディレクトリを変更したい場合には、--prefixオプションで変更ができる。例えば、/usr/local/myapacheというディレクトリにインストールしたいのであれば、次のようにconfigureスクリプトを実行すればよい。

$ ./configure --prefix=/usr/local/myapache

 --prefixオプションは、Apacheのインストール先を一括して設定するためのオプションである。しかし、Apacheに含まれるファイルを、カテゴリ別のディレクトリにインストールするように設定することも可能だ(RPMパッケージでは分けられている)。

 たとえば、HTMLのドキュメントルートを格納するディレクトリは--htdocsdirオプション、CGIプログラムを格納するディレクトリは--cgidirオプションでそれぞれ変更ができる。

 しかし、これらのディレクトリ1つ1つを指定するのは大変だ。そこでApacheには、代表的なOSに合ったインストール先を定義するconfigure.layoutファイルが用意されている。

 configure.layoutファイルには、Table5に示すレイアウトが用意されており、「--with-layout=レイアウト名」を指定することで、レイアウトに則ったインストール先を一括設定できる。

Table5■configure.layoutファイルに記載されているレイアウト情報

レイアウト名 意味
Apache Apacheの標準的なレイアウト。/usr/local/apache以下にインストールする
GNU GNUプロジェクトの標準的なレイアウト
BinaryDistribution バイナリ配布形態によるレイアウト
Mac OS X Server Mac OS X Serverのレイアウト
Darwin Darwin/Mac OSのレイアウト
RedHat Red Hat 7.1のレイアウト(7.2以降のレイアウトとは異なる)
Opt FHSに則った形のレイアウト。/opt/apache以下にインストールする
Beos BeOSのレイアウト
SuSE SuSe 6.xのレイアウト
BSDI BSD/OSのレイアウト
Solaris Solaris 8のレイアウト
FreeBSD FreeBSDのレイアウト
OpenBSD OpenBSDのレイアウト
Cygwin Cygwin 1.xのレイアウト

 Table5に見られるように、標準レイアウトは「Apache」だ。このレイアウトでは、Fig.3に示す場所にファイルをインストールする。Fig.3を見ると分かるように、Apacheレイアウトでは/usr/local/apacheディレクトリ下にすべてのファイルがインストールされる。

Fig.3■Apacheレイアウトの場合のインストール先

/usr/local/apache
├ bin      バイナリファイル
├ cgi-bin    CGIスクリプト
├ conf      設定ファイル
├ htdocs     ドキュメントルート
│ └ manual   オンラインドキュメント
├ icons     アイコンファイル
├ include    インクルードファイル
├ libexec    ライブラリ群
├ logs      ログファイル
├ man      manファイル
└ proxy     プロキシのキャッシュ

 多くの場合には、標準的なインストール先であるApacheレイアウトが使われるだろう。Linux環境では、RedHatレイアウトやoptレイアウトが使われることもある。

 RedHatレイアウトは、Red Hat Linux 7.1のRPMでインストールされるディレクトリ構造である。7.2以降では若干の変更があったが、まだ反映されていない。

$ ./configure --with-layout=RedHat

 RedHatレイアウトでは、Fig.4に示す場所にインストールされる。Fig.4を見るとわかるように、RedHatレイアウトでは、複数のディレクトリに分けられてインストールされる。

 たとえばバイナリファイルは、/usr/binディレクトリや/usr/sbinディレクトリにインストールされ、設定ファイルは、/etc/httpd/confディレクトリにインストールされる。そしてドキュメントルート(公開するHTMLファイルの保存先)は/var/wwwディレクトリとなり、ログの保存先は、/var/log/httpdディレクトリとなる。

 このようにRedHatレイアウトでは、いちどインストールしてしまうと、他のアプリケーションやOSに付属するバイナリファイルと一緒の場所に保存されるため、アンインストール作業は面倒となる。しかし、バイナリ、設定、HTMLドキュメント、ログなど、それぞれ別のディレクトリが設定されるために、管理面ではメリットのあるレイアウトだろう。

Fig.4■RedHatレイアウトの場合のインストール先

/usr
├ bin      一般的なバイナリファイル
├ sbin      rootユーザーが実行するバイナリファイル
├ lib
│ └ apache   ライブラリ群
├ man      manファイル
└ include
  └ apache   インクルードファイル

/etc
└ httpd
  └ conf    設定ファイル

/var
├ www
│ ├ icons    ライブラリ群
│ ├ htdocs   ライブラリ群
│ │ └ manual  オンラインマニュアル
│ └ cgi-bin   CGIスクリプト
├ run
├ log
│ └ httpd    ログファイル
└ cache
  └ httpd    プロキシのキャッシュ

 optレイアウトは、FHSで提唱されている、「標準的ではないアプリケーションは、/optディレクトリ以下にインストールする」に則った方法でインストールするものだ。

$ ./configure --with-layout=opt

 optレイアウトでは、Fig.5に示す場所にインストールされる。optレイアウトでは、ファイルのほとんどが/opt/apacheディレクトリ下に、設定ファイルが/etc/opt/apacheディレクトリ下、ログファイルが/var/opt/apacheディレクトリ下という構成になる。このレイアウト構成は、Red Hat LinuxなどFHSに準拠しているディレクトリ構成を採用しているOSであれば、既存の環境を壊さないというメリットがある。

Fig.5 optレイアウトの場合のインストール先

/opt/apache
├ bin      一般的なバイナリファイル
├ sbin      rootユーザーが実行するバイナリファイル
├ libexec    ライブラリ群
├ man      manファイル
├ share
│ ├ icons    アイコンファイル
│ ├ htdocs   ドキュメントルート
│ │ └ manual  オンラインマニュアル
│ └ cgi-bin   CGIスクリプト
└ include    インクルードファイル

/etc
└ opt
  └apache    設定ファイル

/var
└ opt
  └ apache
    ├ run   ランタイムデータ
    ├ log   ログファイル
    └ cache  プロキシのキャッシュ

 どの場所にApacheをインストールしても動作は変わらないが、デフォルトで用意されるApacheの設定ファイルであるhttpd.confファイルの内容が、インストール先によって適時書き換えられる。

 本稿では、デフォルトのApacheレイアウトでインストールした場合ということで話を進めていくので、他の場所にApacheをインストールした場合には、適時httpd.confファイルの解説を読み替えて欲しい。

PREV 9/14 NEXT