この文書で扱う範囲は、Unix や Unix に類似したシステムでの Apache のコンパイルとインストールです。 Windows における コンパイルとインストールに関しては「Microsoft Windows で Apache を使う」をご覧下さい。 その他のプラットホームに関しては「プラットホーム」をご覧下さい。
Apache 2.0 の設定とインストールの環境は、Apache 1.3 とは
完全に異なるものになりました。簡単にインストールできるように、
Apache 1.3 では特製スクリプトを使っていました。
Apache 2.0 では他の Open Source プロジェクトと同様の環境に
するために libtool
と autoconf
を使うようになっています。
マイナーバージョンからその次のバージョンにアップグレードする (2.0.50 から 2.0.51 へ等) 場合は、まず アップグレードをご覧下さい。
ダウンロード | $ lynx http://httpd.apache.org/download.cgi
|
展開 | $ gzip -d httpd-2_1_NN.tar.gz |
設定 | $ ./configure --prefix=PREFIX
|
コンパイル | $ make |
インストール | $ make install |
カスタマイズ | $ vi PREFIX/conf/httpd.conf |
テスト | $ PREFIX/bin/apachectl start
|
NN は最新のマイナーバージョンナンバーに、
PREFIX はインストールするサーバでのファイルシステムのパスに、
置き換えてください。PREFIX を指定しなかった場合は、
デフォルトの /usr/local/apache2
になります。
Apache HTTPD のコンパイルとインストールに必要なものをはじめとして、 編集とインストールプロセスでのそれぞれの項は 次に詳しく記述されています。
Apache のビルドには次のものが必要です:
PATH
には make
といった基本的なビルドツールが含まれている必要があります。Apache は Apache HTTP
サーバダウンロードサイトからダウンロードできますし、
同じ場所に幾つかのミラーサイトもリストしています。
UNIX に類似するシステムで Apache を使うユーザは、ソースを
ダウンロードしてビルドしたほうが良いでしょう。
ビルドの手順(下記)は簡単ですし、そのおかげでニーズに
見合ったカスタマイズを簡単にできます。
さらに、バイナリのリリースはソースリリースよりも
遅れていることがよくあります。
それでもバイナリをダウンロードしたのであれば、
ディストリビューションの中にある INSSTALL.bindist
ファイルの説明に従ってください。
ダウンロード後、ダウンロードしたものが Apache HTTP サーバの完全で改竄されていないバージョンであることを 検証することが重要です。これはダウンロードした tarball の PGP 署名を テストすることによって検証します。 この手順の詳細は ダウンロード ページ にあり、さらに詳しい例は PGP の使用 に記載されています。
Apache HTTPD の tarball からソースファイルを展開して取り出すとは、 単なる圧縮の解除と tar の展開です:
配布用のソースコードがある現在いるディレクトリの下に、
新しいディレクトリが作られます。
サーバをコンパイルする段階に進む前に、そのディレクトリに
cd
で移動してください。
次のステップは、あなたのプラットホームと
個人的な要求に合うように Apache
ソースツリーを設定することです。
これは配布ディレクトリのルートディレクトリにある、
autoconf
とlibtool
をインストールして buildconf
を実行する必要があるでしょう。
公式リリースではこの作業は必要ありません。)
デフォルトオプションを使ってソースツリーを全て設定する
のであれば、単純に ./configure
とタイプしてください。
デフォルトオプションを変更できるように、
最も重要なオプションは、Apache がこの後でインストールされる位置
--prefix
です。Apache は、このインストール位置に
おいて正常に動作するように設定しなければならないからです。
さらに詳細なファイル位置の制御は追加の 設定オプション
でできます。
この時点で、モジュール を有効にしたり
無効にしたりすることで Apache 本体に含まれる 機能
を指定できます。Apache 本体にはデフォルトで、モジュールの Base セットが
含まれます。その他のモジュールは
--enable-module
オプションで
有効になります。ここで module はモジュールの名前で、
つまりそれはモジュールの名前から mod_
文字列を取り除いた後に
アンダースコアをダッシュで置換した文字列です。
これとは別の方法で --enable-module=shared
オプションを使って、モジュールを
シェアードオブジェクト (DSO) -- 実行時にロードしたり
アンロードしたりできる形式 -- としてコンパイルすることもできます。
同様に、--disable-module
オプションで
Base モジュールを無効化することもできます。
これらのオプションを使っているときに、もし指定したモジュールが存在しなくても
上記に加えて、
ちょっとどんなことができるかを見せましょう。
ここで典型的な例として、/sw/pkg/apache
というインストールツリーでコンパイラとフラグを指定して、
さらに二つの追加モジュール
個々の
これで Apache の様々なパーツをビルドすることができます。 次のコマンドを単純に実行するだけです:
基本的な設定をするのに、Pentium III/Linux 2.2 のシステムでおおよそ 3 分程度かかりますが、 あらかじめご了承下さい。 また、時間はハードウェアや有効にしたモジュールの数に 大きく依存するでしょう。
さて、設定したインストール PREFIX
(前述の --prefix
オプションを参照)
以下にパッケージをインストールする段階になりました。
次のコマンドを実行してください:
アップグレードする場合は、インストールでは設定ファイルや ドキュメントファイルの上書きは行いません。
次に PREFIX/conf/
以下にある 設定ファイルを編集して、
Apache HTTP サーバをカスタマイズします。
docs/manual/ の Apache マニュアルをざっと見てください。 または、http://httpd.apache.org/docs-2.1/ にあるマニュアル最新版、設定ディレクティブに当たってみてください。
次のコマンドを実行して Apache HTTP サーバを開始できます:
URL http://localhost/
を通して最初のドキュメントに対する
リクエストを発行する事ができるはずです。これで見える
ウェブページは PREFIX/htdocs/
でしょう。
サーバを再び停止するには、
次のコマンドを実行します:
アップグレードでまず行なうべきことは、リリースアナウンスと
ソースディストリビューションに入っている CHANGES
を読んで、
自身のサイトに対して影響を及ぼす変更点を探すことです。
メジャーリリース間の変更をする場合 (例えば 1.3 から 2.0 へ、2.0 から 2.2 へ)
は、コンパイル時や実行時の設定に大きな差異があるでしょうから、
手動の調整が必要になるでしょう。モジュールも全て、API
の変更に合わせるためにアップグレードが必要になるでしょう。
マイナーバージョンから次のバージョンにアップグレードする場合
(例えば 2.0.55 から 2.0.57 へ) は、もっと簡単です。
make install
を実行しても今あるドキュメント、
ログファイル、設定ファイルは上書きされません。
さらに、マイナーバージョン間では
前回のインストール時のソースツリーが残されているのであれば、
アップグレードはさらに簡単です。古いソースツリーのルートに存在する
config.nice
ファイルには、前回ソースツリーを設定した時の
config.nice
ファイルを新しいバージョンのソースツリーにコピーし、
それを編集し必要な変更を行なって、次のように実行します。
--prefix
と異なるポート (