このドキュメントは Apache を Unix システム上で、手動での ビルド・インストールの手法によって、コンパイル、インストールするため のものです。もし、あなたが autoconf スタイルの configure インターフェイス を使いたい場合は、Apache のソース配布のルートにある INSTALL ファイルを 代わりに読んでください。特定のプラットフォーム上でのコンパイルと インストールについては、以下の項目を参照してください。
もし、あなたがバイナリ配布版をダウンロードしたのであれば、 Apache のインストールに移ってください。 そうでなければ、次のセクションのサーバのコンパイルについてを読んで下さい。
Apache の全ての設定は、Apache 配布の src
ディレクトリで行われます。このディレクトリに入ってください。
Configuration
ファイルの中で Apache にコンパイルする
モジュールを選択します。実装したいオプションのモジュールの行のコメント
を外すか (ファイルの終わりにある AddModule 行で) 、ダウンロードしたり、
作成した追加のモジュールの新しい行を追加します (どのように
Apache モジュールを作成するのか? についてのドキュメントはAPI.html を参照してください) 。
あるモジュールが確実に必要でないことがわかっているならば、
いくつかのデフォルトモジュールをコメントアウトすることができます
(ただし、デフォルトのモジュールの多くはサーバの正確な操作と
セキュリティにとって重要なので注意してください) 。
Rule
行のいくつかを設定する必要があるかどうかを知るために
Configuration
ファイルの指示も読んでください。
Configure
スクリプトを下記の例のように実行します。
しかし、これが失敗するときや何か特殊な要求があるとき (例えば、
追加したモジュールによって何らかのライブラリが必要な場合など) には
で Configure
ファイルの次のオプションのいくつかを
編集する必要があるかもしれません。
EXTRA_CFLAGS, LIBS, LDFLAGS, INCLUDES
.
Configure
スクリプトを実行します:
(*: 設定内容とシステムによっては、Configure はこの通りに表示しない ことがありますが、それで問題ありません。)% Configure Using 'Configuration' as config file + configured for <whatever> platform + setting C compiler to <whatever> * + setting C compiler optimization-level to <whatever> * + Adding selected modules + doing sanity check on compiler and options Creating Makefile in support Creating Makefile in main Creating Makefile in os/unix Creating Makefile in modules/standard
これで 3 の段階で使われる Makefile が生成されます。 また、オプションのサポートプログラムをコンパイルするために、 サポートディレクトリの中に Makefile が生成されます。
(もし、様々な設定を管理するつもりならば、Configure
に
Configure -file Configuration.ai
のように、
別の Configuration ファイルを読み込むようにオプションを付けると
いいでしょう。)
make
を実行してください。
httpd
というバイナリファイルが
src
ディレクトリに作成されます。Apache のバイナリ配布は
このファイルを提供します。
次のステップはプログラムをインストールし、それを設定することです。
Apache はコンパイルされたディレクトリと同じディレクトリのセットで
設定、実行されるようになっています。もしどこか他のところから実行さ
せたい場合は、ディレクトリを作成し、そこに conf
と
logs
, icons
ディレクトリをコピーしてください。
どちらの場合でも、サーバルートのディレクトリのパーミッションをどう
設定するかについて、
security 情報 を
読むべきです。
次に、サーバの設定ファイルを編集します。3つの設定ファイルで
ディレクティブ を設定します。標準状態では、これらのファイルは
conf
ディレクトリに配置される、srm.conf
,
access.conf
, httpd.conf
です。
設定の参考になるように、配布の conf
ディレクトリに
同じ内容のファイル、srm.conf-dist
,
access.conf-dist
, httpd.conf-dist
があります。
-dist
なしで、その名前のこれらのファイルをコピーするか、
名前を変えてください。それからそれぞれのファイルを編集してください。
それぞれのファイルにあるコメントを注意深く読んでください。
これらのファイルの正確な設定に失敗すると、サーバが動かなくなったり、
セキュリティ的に危険になったりします。
conf
ディレクトリには mime.types
という
追加ファイルがあります。通常このファイルを編集する必要はありません。
最初に httpd.conf
を編集してください。このファイルは
サーバに関する一般的な属性を設定します; ポート番号や起動ユーザ
等々です。次に srm.conf
ファイルを編集
してください; これはドキュメントツリーのルート、 server-parsed HTML
や内部的なイメージマップの解析のような特別な機能等々
を設定します。最後にアクセスに関する基本事項を設定するために
access.conf ファイルを編集します。
これら3つのファイルに加えて、サーバの動作はアクセスされたディレクトリ
にある .htaccess
ファイルを使うことによって、
ディレクトリ毎に設定できます。
httpd
を実行してください。
プログラムはコンパイルされた場所にある httpd.conf
を捜します (標準状態では /usr/local/apache/conf/httpd.conf
).
もしこのファイルがどこか別の場所にあれば、引数 -f をあたえることで、
設定ファイルの場所を与えることができます。例えば下記のようにしてください :
/usr/local/apache/httpd -f /usr/local/apache/conf/httpd.confもし全てがうまく行けば、これは直ちにコマンドプロンプトを返します。 これは、サーバが起動し、実行されているを示しています。 サーバの初期化の間になにか不都合が生じると、画面にエラーメッセージが 表示されるでしょう。 もしサーバが問題なく起動すれば、ブラウザを使ってサーバに接続し、 ドキュメントを読むことができます。ブラウザをサーバと同じマシンで動か しており、ポートも標準の 80 番を使用している場合、ブラウザに 下記のURL を入力してください。
http://localhost/
サーバが起動すると、リクエストを処理するために子プロセスを たくさん作ることを覚えておいてください。もしルートユーザとして Apache を起動させている場合、親プロセスはルートとして動作し続けますが、 子プロセスは httpd.conf ファイルで与えらたユーザ権限で動作するように 変更されます。
httpd
を実行させたときに、アドレスを "bind" できないという
エラーが出たならば、Apache が使用するように設定されたポートが、
既に他のプロセスに使われているか、一般ユーザとして 1024 番以下
(たとえば、標準ポートである 80 番を使用するなど) のポートを使って
httpd を作動させようとしているかのどちらかです。
サーバが動作しない場合は、httpd を実行したときに表示される
エラーメッセージを読みましょう。また、詳しい情報を得るために
サーバの error_log を調べましょう (標準の設定では、
error_log
ファイルは logs
ディレクトリにあります)。
システムの再起動後にもサーバを走らせたいのなら、スタートアップファイル
で httpd
を呼ぶようにしてください (一般的には、
rc.local
か、または rc.N
ディレクトリ
にあるファイルです)。この設定では root として Apache を起動します。
その前に、セキュリティとアクセス制限に関するサーバの設定が確実に
なされていることを確認してください。
Apache を停止させるには、親プロセスに TERM シグナルを送信します。
親プロセスの PID は、(別の場所に設定されていなければ) logs
ディレクトリにある httpd.pid
ファイルに書かれています。
子プロセスは親によって再度生成されてしまうので、子プロセスを殺そう
とはしないでください。サーバを停止させる一般的なコマンドは以下の通りです :
kill -TERM `cat /usr/local/apache/logs/httpd.pid`
Apache のコマンドライン・オプションや、設定やログファイルの詳細な情報 については、 Apache の起動を参照してください。 配布モジュールによってサポートされている全ての Apache の ディレクティブ に関しては、 Apache の ディレクティブ を参照してください。
httpd
サーバの他に、
Apache には多数のサポートプログラムが含まれています。これらは標準
ではコンパイルされません。サポートプログラムは support
ディレクトリにあります。サポートプログラムをコンパイルするには、
このディレクトリに入り、以下のように入力してください :
make