Apache Webサーバー_________ |
ソースコードからインストール |
ここでは、Apacheをソースコードからインストールしてみます。UNIX版Apacheの場合はこのソースコードからのインストールというのが標準になります。用意するものはtar.*形式のソースコードだけです。まず、Apache Webサイト http://www.apache.org/ から最新バージョンを入手してください。インストール自体は「./configure」、「make」、「make install」で完了します。
このように、Apacheのソースコードからのインストールは至極簡単です。失敗することはまず無いでしょう。Apacheの難しさはインストール自体ではなく、インストールしてからの設定、そして何よりもまずいかにシンプルな設計でインストールするか(不必要なモジュールを組み込まない、DSOモードを適用するかどうか等)にあるといえます。Apacheのインストール紹介サイトや設定紹介サイトは数多くありますが、ここでは、インストール時のモジュールの扱いに特にこだわって紹介してみましょう。インストール時のモジュールに関しての基本コンセプトは以下のようになります。
Apacheのインストール時、何も指定しないでインストールした場合に組み込まれるモジュールは
http_core.c(コア) | mod_env.c | mod_log_config.c | mod_mime.c | mod_negotiation.c |
mod_include.c | mod_status.c | mod_autoindex.c | mod_dir.c | mod_cgi.c |
mod_asis.c | mod_imap.c | mod_actions.c | mod_userdir.c | mod_alias.c |
mod_access.c | mod_auth.c | mod_setenvif.c |
となっています。この中で必要なものだけを組み込み、不必要なものは削除します。また、標準以外で必要性が絶対的にあるものも組み込みます。つまり、Apacheのインストールの前には必ず使用目的や組み込みモジュールに関しての条件を明確にしておくことが大切です。それぞれのモジュールの役割についてはApacheモジュール一覧を参照してください。
例としてここでは以下の条件でApacheのインストールを行ってみましょう。
入手したソースコードを適当な場所に移動し、インストールしていきます。
$ mv apache 1.3.27.tar.gz /usr/src
$ cd /usr/src $ tar zxvf apache 1.3.27.tar.gz $ cd apache 1.3.27/ $ ./configure --enable-suexec \ $ make $ su # make install |
./configure行に注目してください。--enable-*でデフォルトにない機能を付加し、--disable-*でデフォルトの機能を削除しています。指定の際には例えば「mod_asis.c」なら「asis」と指定します。つまり「mod_」と「.c」を省略します。それぞれの指定に関しての詳細は
--enable-suexec (suEXECを有効にする) --suexec-caller=apache (apacheというユーザー権限でApacheを動作させる) --suexec-uidmin=500 --suexec-gidmin=500 (uid、gidの最小値をそれぞれ500とする) --suexec-userdir=public_html (ユーザーディレクトリはpublic_htmlとする) --enable-module=so (DSOモードを有効にする) --disable-module=xxxxx (必要でない標準モジュールをApacheに組み込まない) |
となります。また、デフォルトでは/usr/local/apacheにインストールされますので、インストール場所を変更したい場合には--prefix=インストール先と指定します。また、/usr/local/apache配下には
bin | Apacheの各種実行系コマンド(プログラム)が格納されている | |
cgi-bin | デフォルトのcgiスクリプトの格納場所 | |
conf | 各種設定ファルが格納されている | |
htdocs | デフォルトのドキュメントルートディレクトリ | |
icons | 各種Apacheアイコンが格納されている | |
include | 各種ヘッダファイルの格納場所 | |
libexec | モジュールの格納場所 | |
logs | デフォルトのログファイル格納場所 | |
man | man(マニュアル)の格納場所 | |
proxy | proxyキャッシュファイルの格納場所 |
が作成されます。
インストールが完了したら以下のコマンドで現在組み込まれているモジュールを確認します。
$ /usr/local/apache/bin/httpd -l
Compiled-in modules:
http_core.c(コア)
mod_mime.c
mod_status.c
mod_autoindex.c
mod_dir.c
mod_cgi.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_access.c
mod_auth.c
mod_so.c
mod_setenvif.c
suexec: enabled; valid wrapper /usr/local/apache/bin/suexec
最初に指定した条件通りになっているか確認します。もし不必要なモジュールが組み込まれていたら、それをdisable指定して再インストールを行います。何も指定しなかった場合に組み込まれるモジュール18個に対し、ここでは13個のモジュールが組み込まれました。結果、5個のリソース(資源)の節約が出来ました。
CopyRight (C) 2000-2013 by T.Shiraishi All right reserved 無断転載禁止/リンクフリー |