Apache ソースをコンパイルし、SSL で動作するようにビルドする必要があります。この節では、ロードバランサプラグインが実行されるように Apache Web Server を正常にコンパイルするために必要な最小要件と手順の概要について説明します。これらの要件と手順は、ソフトウェアの Solaris および Linux バージョンにのみ適用されます。Apache の Windows バージョンについては、Apache の Web サイトを参照してください。
ここで説明する手順は、http://httpd.apache.org/docs に示されている手順から抜粋したものです。SSL 対応の Apache の詳細なインストール方法については、この Web サイトを参照してください。
Apache ソフトウェアがすでにダウンロードされ、圧縮解除されている必要があります。
OpenSSL ソースを http://openssl.org からダウンロードし、展開します。
OpenSSL をコンパイルしてビルドします。
完全なインストール手順については、OpenSSL を圧縮解除したディレクトリにある INSTALL という名前のファイルを参照してください。このファイルには、OpenSSL をユーザー指定の場所にインストールする方法に関する情報が含まれています。
OpenSSL の詳細については、http://www.openssl.org/を参照してください。
Apache をダウンロードし、展開します。
Apache は http://httpd.apache.org から入手できます。
Apache をコンパイルしてビルドします。ソースツリーを設定します。
cd http-2.0_x.
次のコマンドを実行します。
./configure --with-ssl= OpenSSL-install-path --prefix= Apache-install-path --enable-ssl --enable-so
このコマンドの中で、x は Apache のバージョン番号、open-ssl-install-path は OpenSSL がインストールされているディレクトリへの絶対パス、および Apache-install-path は Apache をインストールするディレクトリです。
Apache 2 サーバーが HTTPS 要求を受け入れる場合、--enable-ssl --enable-so オプションを使う必要があるだけです。
Linux 2.1 上の Apache の場合は、コンパイルの前に次の手順を実行します。
src/MakeFile を開き、自動的に生成されるセクションの最後を見つけます。
自動的に生成されるセクションのあとの最初の 4 行のあとに、次の行を追加します。
LIBS+= -licuuc -licui18n -lnspr4 -lpthread -lxerces-c -lsupport -lnsprwrap -lns-httpd40 LDFLAGS+= -L/application-server-install-dir/lib -L/opt/sun/private/lib
-L/opt/sun/private/lib は、Application Server を Java Enterprise System インストールの一部としてインストールした場合にのみ必要であることに注意してください。
次に例を示します。
## (End of automatically generated section) ## CFLAGS=$(OPTIM) $(CFLAGS1) $(EXTRA_CFLAGS) LIBS=$(EXTRA_LIBS) $(LIBS1) INCLUDES=$(INCLUDES1) $(INCLUDES0) $(EXTRA_INCLUDES) LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) "LIBS+= -licuuc -licui18n -lnspr4 -lpthread -lxerces-c -lsupport -lnsprwrap -lns-httpd40 LDFLAGS+= -L/application-server-install-dir /lib -L/opt/sun/private/lib
環境変数 LD_LIBRARY_PATH を設定します。
スタンドアロンのインストールでは、これを Application Server に次のように設定します。as-install/lib
Java Enterprise System インストールでは、これを Application Server に次のように設定します。as-install/lib:opt/sun/private/lib。
Solaris 9 を使用している場合、LD_LIBRARY_PATH に/usr/local/lib を追加します。
使用しているバージョンのインストール手順で説明されている方法で、Apache をコンパイルします。
詳細については、http://httpd.apache.org/を参照してください。
一般的な手順は次のとおりです。
Apache の ssl.conf および httpd.conf ファイル内に、ユーザーの環境に対応する正しい値が格納されていることを確認します。
ssl.conf では、VirtualHost default:port に対して、デフォルトのホスト名とポートを、Apache がインストールされているローカルシステムのホスト名とサーバーのポート番号に置き換えます。
この変更を行わないと、ロードバランサは機能しません。Solaris Apache が起動しない可能性があり、Linux では HTTPS 要求が機能しない可能性があります。
ssl.conf では、ServerName www.example.com:443 の www.example.com を、Apache がインストールされているローカルシステムのホスト名に置き換えます。
この変更を行わないと、セキュリティー証明書がインストールされている場合に Apache を起動すると次の警告が表示されます。
[warn] RSA server certificate CommonName (CN) hostname does NOT match server name! |
Apache に対する証明書のインストールについては、「Apache のセキュリティー証明書を作成する」を参照してください。
httpd.conf では、ServerName www.example.com:80 に対して、www.example.com を Apache がインストールされているローカルシステムのホスト名に置き換えます。
この変更を行わないと、Apache を起動したときに、システムがサーバーの完全修飾ドメイン名を特定できなかったことと、重複する VirtualHost エントリが存在することを示す警告が表示されます。
Apache ユーザーが、apache-install-location/conf/ ディレクトリとそのディレクトリ内のファイルに対する必要なアクセス許可を持っていることを確認します。
Apache ユーザーとは、その配下で Apache サーバーが要求に応答する UNIX ユーザーのことです。このユーザーはファイル httpd.conf で定義されます。
root ユーザーとして Apache をインストールした場合は、apache-install-location/conf/httpd.conf 内の、Apache ユーザーおよびグループの設定に関する注意事項に目を通します。
ユーザーおよびグループの設定が、このディレクトリに対するセキュリティー要件を満たしていることを確認します。たとえば、このディレクトリへのアクセスを制限するには、同じユーザーグループにディレクトリの所有者として Apache ユーザーを追加します。