Sun ONE ロゴ     前へ      目次      索引      次へ     
Sun ONE Application Server 7, Update 1 管理者ガイド



第 7 章   Web サーバープラグインの設定

この章では、Sun ONE Application Server による HTTP (HyperText Transfer Protocol) 要求の処理方法と、Sun ONE Application Server による Web サーバープラグインの設定方法および使用方法を説明します。また、Web サーバープラグインと Microsoft IIS および Apache Web サーバーの併用について、およびその設定方法についても説明します。

この章では次のトピックについて説明します。

Web サーバープラグインについて

HTTP リバースプロキシプラグインを使うことで、ユーザーから Sun ONE Web Server または Sun ONE Application Server に指示を送り、特定の HTTP 要求を別のサーバーへ転送することができます。たとえば、特定の Web アプリケーションの要求を、インターネットに接続した Web サーバーから企業内のファイアウォールに転送するような設定が可能です。

Sun ONE Application Server 内では、Web サーバープラグインにより、1 つのサーバーインスタンスから別のサーバーインスタンスに HTTP (Web) 要求を転送できます。

Web サーバープラグインの機能は次のとおりです。

  • プロキシサーバーからの接続をできるかぎり再利用する。これにより、着信要求を処理する際、新しい接続を確立する必要がなくなる
  • Web サーバープラグインは、受信を開始した時点で、要求と応答のストリーミングを開始する。つまり、要求または応答が完全に収集された後に、これらをリモートサーバーへ転送する
  • Web サーバープラグインは、同一リモートサーバーへの複数の送信 HTTP 接続を適切に管理する。Web サーバープラグインによる要求の転送用として確立された接続を「送信 HTTP 接続」と呼ぶ

Web サーバープラグインの機能を理解するためには、HTTP 要求の基礎知識、とりわけ Sun ONE Application Server が HTTP 要求を処理する方法を理解しておく必要があります。

クライアント要求の処理

Sun ONE Application Server はHTTP 要求を直接受け入れ、それに応答できるアプリケーションサーバーです。この節では、HTTP の基本的な概念と、Sun ONE Application Server が要求をどのように処理するかについて説明します。この節には次の項目があります。

HTTP の基礎知識

HTTP/1.1 プロトコルの機能を簡単にまとめます。

  • クライアント (通常はブラウザ) はサーバーとの接続を確立し、要求を送信する
  • サーバーは要求を処理し、応答を生成する。さらにConnection: Close ヘッダーを検出すると接続を終了する

要求は、GETPOST などのメソッドを指定する行、要求の対象となるリソースを示す URI (Universal Resource Identifier)、および HTTP プロトコルのバージョンを空白文字で区切った形式になります。

通常は、このあとに多数のヘッダー、ヘッダーの終わりを表す空白行が続き、さらに本文データが含まれる場合もあります。ヘッダーは、要求またはクライアントの本文データに関するさまざまな情報を提供します。一般に、ヘッダーは、POST メソッドと PUT メソッドにのみ送信されます。

次の例では、ブラウザがサーバー foo.com に要求を送信し、/index.html のリソースが返されます。この例では、本文データは送信されません。これは、要求のデータを取得するだけで送信しない GET メソッドが使用されているからです。


GET /index.html HTTP/1.0

User-agent:Mozilla

Accept:text/html, text/plain, image/jpeg, image/gif, */*

Host:foo.com


サーバーは要求を受信し、処理します。サーバーは複数の要求を同時に処理できるにもかかわらず、各要求を個別に処理します。各要求は、要求処理プロセスを設定する一連の手順に分割されます。

サーバーは、HTTP プロトコルのバージョン、HTTP 状態コード、および原因フレーズを空白文字で区切った形式で応答を生成します。通常は、このあとに多数のヘッダーが続きます。ヘッダーの終わりは空白行で表されます。そのあとに、応答の本文データが続きます。次に典型的な HTTP 応答を紹介します。


HTTP/1.0 200 OK
Server:Standard/7.0
Content-type:text/html
Content-length: 83

<HTML>
<HEAD><TITLE>Hello World</Title></HEAD>
<BODY>Hello World</BODY>
</HTML>

状態コードと原因フレーズから、サーバーが要求をどのように処理したかがわかります。通常は、要求の処理に成功したことを表す状態コード 200 が返されます。この場合、本文データには要求された項目が含まれます。別のサーバーまたはブラウザキャッシュへのリダイレクト、さまざまな種類の HTTP エラー (「404 Not Found」など) を表す結果コードが返されることもあります。

要求処理プロセスの手順

Sun ONE Application Server は、初期起動時に特定の初期化タスクを実行します。その後、ブラウザなどのクライアントからの HTTP 要求を待機します。要求を受信すると、最初に仮想サーバーを選択します。

仮想サーバーを選択すると、仮想サーバーの obj.conf ファイルにより、次の手順に従って要求の処理方法が指定されます。

  1. AuthTrans (承認変換)
  2. 要求とともに送信される承認情報 (名前、パスワードなど) を検証する

  3. NameTrans (名前変換)
  4. 論理 URI をローカルファイルシステムのパスに変換する

  5. PathCheck (パスチェック)
  6. ローカルファイルシステムのパスの妥当性検査を実施し、要求元がこのファイルシステム上の所定のリソースに対してアクセス権を持っていることを確認する

  7. ObjectType (オブジェクト型の識別)
  8. 要求されたリソースの MIME (Multi-purpose Internet Mail Encoding) 型を特定する。たとえば、text/htmlimage/gif などの MIME 型がある

  9. Service (応答の生成)
  10. 応答を生成し、クライアントに返す

  11. AddLog (ログエントリの追加)
  12. ログファイルにエントリを追加する

  13. Error (サービス)
  14. 前の手順でエラーが発生した場合にのみ実行される手順。エラーが発生した場合、サーバーはログにエラーメッセージを記録し、プロセスを中止する

Web サーバープラグインの設定

Web サーバープラグインの設定と動作は、一組の設定ファイルで決定されます。Sun ONE Application Server は、クライアントからの要求を処理する際、毎回これらのファイルに定義された設定情報を参照します。設定ファイルは、obj.confinit.conf です。obj.conf ファイルは、たとえば server1-obj.conf のように、仮想サーバーの名前が最初につけられます。詳細については、「obj.conf ファイル」を参照してください。

Sun ONE Application Server の各インスタンスは、サーバーが起動時に参照する固有の init.conf ファイルを持ちます。

前の項目で説明したように、obj.conf 設定ファイルには、クライアントからの要求とこれに対する応答処理の各段階で実行する内容を、Sun ONE Application Server に指示する一連の指令が格納されています。各指令は、SAF (Server Application Function) を呼び出します。

Sun ONE Application Server の操作には、obj.conf ファイルが必要です。管理インタフェースを使ってサーバーに変更を加えると、システムにより、obj.conf が自動的に更新されます。

init.conf 設定ファイルは、初期化の際に、サーバーを設定する変数値を設定します。サーバーは、起動時に、このファイルに指定されている設定パラメータを実行します。詳細については、『Sun ONE Application Server 管理者用設定ファイルリファレンス』を参照してください。

次の図は、Web ブラウザ、フロントエンドの Web サーバー、バックエンドのアプリケーションサーバー、および Web サーバープラグインの service-passthroughauth-passthrough SAF の関係を示しています。

   Web ブラウザ、Web サーバー、アプリケーションサーバー、Web サーバープラグイン SAF の関係
この図は、Web ブラウザ、フロントエンドの Web サーバー、バックエンドのアプリケーションサーバー、および Web サーバープラグインの service-passthrough と auth-passthrough SAF の関係を示しています。

Web サーバープラグインの SAF

この節では、次の SAF (Server Application Functions) の機能と動作を説明します。

init-passthrough

init-passthrough 関数は、Web サーバープラグインを初期化します。この関数は、Web サーバープラグインの使用を開始する前に呼び出す必要があります。

Init fn="load-modules" shlib="c:/plugins/passthrough.dll" funcs="init-passthrough,auth-passthrough,check-passthrough,service- passthrough" NativeThread="no"

Init fn="init-passthrough"

auth-passthrough

auth-passthrough SAF は、AuthTrans-class 指令に適用されます。

auth-passthrough 関数は、中間サーバー上で実行されている server-passthrough 関数によってコード化された、クライアント情報を求める着信 HTTP (Web) 要求を検査します。次のようなクライアント情報があります。

  • 要求の発信元の IP アドレス
  • 発信元クライアントで使用される SSL キーサイズ
  • 発信元クライアントから提供される SSL クライアント証明書

auth-passthrough は、コード化されたクライアント情報を検出すると、着信要求が service-passthrough を実行している中間サーバーから転送されたものではなく、送信元クライアントから直接送信されたものとみなします。

これは、次のような 2 層配備のシナリオで便利です。

  • Sun ONE Application Server インスタンスが、企業のファイアウォールの背後に配置された 2 番目のファイアウォールによって保護されている
  • クライアントが S1AS インスタンスに直接接続することが許可されていない

そのようなネットワークアーキテクチャの場合、クライアントは必ず、プロキシプラグインが動作しているフロントエンドの Web サーバーに接続します。この Web サーバーは、要求を Sun ONE Application Server に転送します。したがって、Sun ONE Application Server が要求を受信できるのは、プロキシのホスト (ここでは Web サーバー) からだけであり、クライアントのホストから直接受信することはできません。これは、2 つのファイアウォールの背後に存在する Sun ONE Application Server インスタンス上に配備されたアプリケーションがクライアントの情報 (クライアントの IP アドレスなど) に対してクエリを実行すると、そのアプリケーションは、実際に要求を中継したホストであるプロキシホストの IP アドレスを取得することを意味しています。auth-passthrough SAF を使用すれば、代わりにリモートの (プロキシを介して) クライアント情報が返されるようにこの動作を変更することができます。

auth-passthrough は認証に使用できる情報 (要求の送信元の IP アドレスなど) を上書きできるので、信頼できるクライアントまたはサーバーだけに auth-passthrough を実行しているサーバーへの接続を許可することが重要です。予防措置として、auth-passthrough は、企業のファイアウォールで保護されているサーバーだけで実行することをお勧めします。インターネット経由でアクセスできるサーバーで、auth-passthrough SAF の実行を許可しないでください。auth-passthrough SAF は、発信元のクライアントに直接関連する情報が必要な場合にのみ使用してください。

上記のシナリオの場合、SSL クライアント認証を有効にできるのは Web サーバーに対してのみである点に注意してください。設定が正しく動作するようにするには、アプリケーションサーバーに対しては常に無効にします。

コマンドの例

AuthTrans fn="auth-passthrough"

service-passthrough

service-passthrough SAF は、Service-class 指令に適用されます。

service-passthrough SAF は、処理する要求をサーバーからサーバーへ転送します。service-passthrough SAF の設定により、要求の受信に使用された接続の種類に関係なく、リモートサーバーへの SSL 接続または SSL 以外の接続 (HTTPS または HTTP) を使用できます。service-passthrough SAF は、送信元クライアントに関する情報をコード化します。この情報は、リモートサーバー上で実行されている auth-passthrough によって復号化できます。

通常、service-passthrough 指令は、obj.conf 設定ファイル内でその他の指令と組み合わせて使用されます。次の例を参照してください。

<Object name="passthrough">

ObjectType fn="force-type" type="magnus-internal/passthrough"

Error reason="Bad Gateway" fn="send-error" uri="$docroot/badgateway.html"

</Object>

<Object name="default">

....

NameTrans fn="assign-name" from="(/webapp1|/webapp1/*)" name="passthrough"

...

<</Object> >

バックエンドアプリケーションサーバーがダウンしている場合は、ユーザーには代わりにローカルの HTML ファイル badgateway.html が表示されます。service-passthrough SAF を実行しているサーバーが、アクセス権を持っているファイルを提供し、拒否された要求だけをバックエンドアプリケーションに転送する必要がある場合は、ObjectType 行を次のように変更します。

ObjectType fn="check-passthrough" type="magnus-internal/passthrough"

check-passthrough

check-passthrough SAF は、ObjectType-class 指令に適用されます。

check-passthrough 関数は、要求されたリソース (HTML ドキュメント、GIF イメージなど) がローカルサーバー上で使用可能であるかどうかを確認します。要求されたリソースがローカルに存在しない場合、check-passthrough SAF は、要求を別のサーバーに転送し、service-passthrough SAF で処理することを示す型を設定します。

パラメータ:

type - (オプション) 要求されたリソースが存在しない場合に設定される型。デフォルトは magnus-internal/passthrough

ObjectType fn="check-passthrough"

Web サーバープラグインの使用

Sun ONE Web Server またはSun ONE Application Serverインスタンスにプラグインを追加するには、次の手順に従います。

  1. UNIX の場合は libpassthrough.soinstall_dir/plugins/passthrough/bin ディレクトリに存在することを、Windows の場合は passthrough.dll ファイル がinstall_dir/bin ディレクトリに存在することを、それぞれ確認します。Sun ONE Web Server 6.0 にプラグインを追加するときは、Sun ONE Application Server 7 のインストールからプラグインをコピーする必要があります。
  2. 設定ファイル install_dir/config/init.conf (Sun ONE Application Server 7 の場合) または install_dir/config/magnus.conf (Sun ONE Web Server 6.0 の場合) に、次の行を追加します。各行は Init で開始し、1 行で記述してください。
  3. Windows 環境では:

    Init fn="load-modules" shlib="c:/install_dir/bin/passthrough.dll" funcs="init-passthrough,auth-passthrough,check-passthrough, service-passthrough" NativeThread="no"

    Init fn="init-passthrough"

    UNIX 環境では:

    Init fn="load-modules" shlib="install_dir/plugins/passthrough/bin/libpassthrough.so" funcs="init-passthrough,auth-passthrough,check-passthrough,service-passthrough" NativeThread="no"

    Init fn="init-passthrough"

  4. 設定ファイル config/appserver-server-instance-obj.conf の先頭に次の行を追加して、obj.conf に passthrough <Object> を追加します。Sun ONE Application Serverでは、config/<appserver-server-instance>-obj.conf ファイル上で手順を実行する必要があります。
  5. <Object name="passthrough">
    ObjectType fn="force-type" type="magnus-internal/passthrough"
    Service type="magnus-internal/passthrough" fn="service-passthrough" servers="
    server"
    Error reason="Bad Gateway" fn="send-error" uri="$docroot/badgateway.html"
    <</Object>
    >

    server は、次の形式で記述した URL を意味します。

    http://servername:port

  6. 設定ファイル install_dir/config/obj.conf で、デフォルトオブジェクトの先頭に次のような行を追加して、どの URI を転送するかを設定します。
  7. NameTrans fn="assign-name" from="(/uri|/uri/*)" name="passthrough"

    uri はリモートサーバー上に配備された Web アプリケーションのコンテキストルートです。passthrough は、手順 3 で指定した obj.conf 内の <Object> の名前です。

    次に例を示します。

    <Object name="default">
    ...
    NameTrans fn="assign-name" from="(/webapp1|/webapp1/*)" name="passthrough"
    ...
    <</Object>
    >

  8. サーバーを再起動します。


  9. プラグインライブラリの名前は、Solaris および Linux では libpassthrough.so です。Windows では、passthrough.dll です。



Web サーバープラグインを使用するための Microsoft IIS の設定

Web サーバープラグインと併用する場合の Microsoft Internet Information Services の設定には、Microsoft IIS を使用するための Web サーバープラグインの設定と、Web サーバープラグインを使用するための Microsoft IIS の設定が含まれます。

サーバープールを設定し、別のサーバー上で稼働する複数のアプリケーションを扱うこともできます。

この節では次の項目について説明します。

IIS 用に Web サーバープラグインを設定

IIS 用に Web サーバープラグインを設定するには、次の手順を実行します。

  1. C:¥ のコマンド行プロンプトで次のコマンドを実行し、IIS の wwwroot ディレクトリの下に Web サーバープラグインのディレクトリを作成します。
  2. md ¥Inetpub¥wwwroot¥sun-passthrough

  3. プラグインファイルを C:¥Inetpub¥wwwroot¥sun-passthrough ディレクトリにコピーします。
  4. テキストエディタを使って、Sun ONE Application Server がインストールされているマシンの URL を C:¥Inetpub¥wwwroot¥sun-passthrough¥sun-passthrough.properties ファイルに追加します。
  5. テキストエディタを使って、次の情報を追加する必要があります。

    server=http://appservername:port

    appservername は Sun ONE Application Server がインストールされているマシンのホスト名または IP アドレス、port はそのマシンが待機しているポートの番号です (通常は 80)。

  6. Sun ONE Application Server に処理させるコンテキストルートを C:¥Inetpub¥wwwroot¥sun-passthrough¥sun-passthrough.properties ファイルに追加します。
  7. これらのコンテキストルートは、Sun ONE Application Server に配備したアプリケーションのコンテキストルートに対応している必要があります。これらのコンテキストルートに対する要求は Sun ONE Application Server によって処理され、その他の要求は IIS Web サーバーによって処理されます。要求を Web アプリケーションに渡すコマンド行は、次のとおりです。

    passthrough=/webapplication

    /webapplication は Web アプリケーションのコンテキストルートです。すべての要求を Sun ONE Application Server に渡すには、次の行を追加します。

    passthrough=/

これで、Microsoft IIS のルートディレクトリに Web サーバープラグインを設定できました。プロセスを完了するには、次に Web サーバープラグインを使えるように Microsoft IIS を設定します。

Web サーバープラグイン用に IIS を設定

Web サーバープラグイン用に IIS を設定するには、Windows のインターネットサービスマネージャを開く必要があります。インターネットサービスマネージャは、「コントロールパネル」フォルダ内の「管理ツール」フォルダにあります。

インターネットサービスマネージャを開き、次のタスクを実行します。

  1. プラグインを有効にする Web サイトを選択します。Web サイトの名前は、通常は 既定のWebサイトです。
  2. Web サイトを右クリックし、「プロパティ」をクリックして「プロパティ」ノートブックを開きます。
  3. 「ISAPI フィルタ」タブを開き、「追加」ボタンをクリックします。次の手順に従って新しい ISAPI フィルタを追加します。
    1. 「フィルタ名」フィールドに Sun ONE Application Server と入力します。
    2. 「実行ファイル」フィールドに C:¥Inetpub¥wwwroot¥sun-passthrough¥sun-passthrough.dll と入力します。
    3. 「OK」をクリックし、「プロパティ」ノートブックを閉じます。

  4. 次に、新しい仮想ディレクトリを作成し、設定します。次の手順に従って、仮想ディレクトリを新規作成し、設定してください。
    1. 既定のWebサイトを右クリックし、「新規」、「仮想ディレクトリ」を順にクリックします。「仮想ディレクトリの作成ウィザード」が開きます。
    2. 「エイリアス」フィールドに sun-passthrough と入力します。
    3. 「ディレクトリ」フィールドに C:¥Inetpub¥wwwroot¥sun-passthrough と入力します。
    4. 実行権限のボックスにチェックマークをつけ、それ以外のすべてのパーミッションボックスのチェックマークを外します。
    5. 「完了」をクリックします。

  5. 新しい設定を適用するには、Web サーバーを停止し、起動しなおす必要があります。Web ブラウザを停止するには、Web サイトを右クリックし、「停止」を選択します。Web ブラウザを起動するには、Web サイトを右クリックし、「起動」を選択します。
  6. Web ブラウザに次のように入力し、Web アプリケーションのコンテキストルートにアクセスします。

    http://webservername/webapplication

    webservername は Web サーバーのホスト名または IP アドレスです。webapplicationC:¥Inetpub¥wwwroot¥sun-passthrough¥sun-passthrough.properties に指定したコンテキストルートで、Web サーバー、Web サーバープラグイン、および Sun ONE Application Server の正常な動作の検証に使われます。

複数のサーバープールの設定

sun-passthrough.properties ファイルに複数サーバープールを設定することで、Web アプリケーションを複数のアプリケーションサーバーに区切ることができます。これにより、一部のアプリケーションを一部のサーバーセットで実行し、別のアプリケーションを別のサーバーセットで実行できます。各サーバープールには、アルファベットと数字を使って他と重複しない名前をつけます。「Web サーバープラグインを使用するための Microsoft IIS の設定」で説明した方法で Microsoft IIS 用に Web サーバープラグインをインストールおよび設定したら、C:¥Inetpub¥wwwroot¥sun-passthrough¥sun-passthrough.properties ファイルを開き、関連する server プロパティと passthrough プロパティの行に、サーバープールにつけた一意の名前を追加します。サーバープール名の後にはピリオド (.) をつけます。

たとえば、sun-passthrough.properties ファイルの次の行は、2 つのサーバープールを定義しています。最初のサーバープールは server-a と、コンテキストルート /app1 のサービス要求から構成されます。もう一方のサーバープールは server-b と、コンテキストルート /app2 および /app3 のサービス要求から構成されます。

server=http://server-a

passthrough=/app1

serverpool2.server=http://server-b

serverpool2.passthrough=/app2

serverpool2.passthrough=/app

sun-passthrough プロパティファイルの例

# Sun ONE Application Server Web サーバープラグイン (IIS 用)

#

# このファイルは、IIS 用の Sun ONE Application Server Web サーバープラグインの設定に使い

# ます。「#」から始まる行は無視されます。

# server

#

# server プロパティは、アプリケーションサーバーの URL を指定します。複数の server プロパティ

# を指定すると、プラグインは指定のアプリケーションサーバーに負荷を分散します。

#

server=http://localhost:8080

# passthrough

#

# passthrough プロパティは、Web アプリケーションのコンテキストルート(仮想ディレクトリ)を

# 指定します。指定したコンテキストルートの要求はアプリケーションサーバーに渡され、処理されます。

# 「passthrough=/」を指定すると、すべての要求がアプリケーションサーバーに渡され、処理されます。

#

# passthrough プロパティを指定するときは、詳細なものから順に入力します。たとえば、

# 「passthrough=/apps/app1」は「passthrough=/apps」の前に指定します。

#

# passthrough は、複数を指定できます。

#

#passthrough=/webapp

#passthrough=/servlets

#passthrough=*.jsp

passthrough=/

# prefix

#

# prefix プロパティは、プラグインの DDL ファイル (sun-passthrough.dll) を含む IIS 仮想

# ディレクトリを指定します。

#

prefix=/sun-passthrough

# error-url

#

# error-url プロパティは、アプリケーションサーバーを利用できない場合にクライアントをリダイレク

# トするページの URL を指定します。

#

#error-url=/badgateway.htm

# プール名にピリオド (.) を続け、server プロパティと passthrough プロパティの名前を指定する

# ことで、複数のサーバープールを設定できます。プールには、アルファベットと数字を使って自由に名前

# をつけられます。

#

# たとえば、次の例は 2 つのサーバープールを定義しています。一方のサーバープールは「/app1」に

# ある Web アプリケーションに対応し、他方は「/app2」と「/app3」にある Web アプリケーションに

# 対応します。

#

#serverpool1.server=http://server-a

#serverpool1.passthrough=/app1

#

#serverpool2.server=http://server-b

#serverpool2.passthrough=/app2

#serverpool2.passthrough=/app3

Apache サーバー用に Web サーバープラグインを設定

ここでは、Apache のソースコードをコンパイルし、Apache Web サーバーのインストールを設定する方法について説明します。

  1. 最新の Apache ソースコードを www.apache.org からダウンロードします。
  2. ソースコードを解凍します。ソースコードは圧縮されたアーカイブとして提供されます。Apache 1.3.22 をインストールする場合、ソースコードのアーカイブ名は apache_1.3.22.tar.gz です。

  3. 次のコマンドを使ってアーカイブを解凍します。
  4. $ tar -zxvf apache_1.3.26.tar.gz

    このコマンドにより、apache_1.3.26 という名前のディレクトリが、現在の作業ディレクトリ内に作成されます。

  5. ここで、Apache のソースコードをコンパイルできるように環境を設定する必要があります。このソースコードには、configure という名前のスクリプトが付属しています。このスクリプトは、Apache を正しくコンパイルするのに必要なサポートファイル (ヘッダー、共有ライブラリ、ユーティリティプログラムなど) がユーザーの環境に含まれているかどうかをチェックするためのものです。
  6. 環境を設定するには、Apache ソースディレクトリに移動し、次の手順を実行します。

    1. Apache を Solaris または Linux にインストールする場合、次のパスが存在していることを確認します。
      • CC=/opt/SUNWspro/bin/cc
      • ar が PATH に含まれている (このコマンドは /usr/ccs/bin 内にある)
      • Makefile (このコマンドは /usr/ccs/bin/make 内にある)

    2. 次のコマンドを実行します。
    3. $ ./configure -enable-module=proxy --prefix=/usr/local/apache

    上記のコマンドで指定したディレクトリは任意の場所を指定できます。Apache のインストール先のパスを指定できます。prefix 引数は Apache のインストール先を示します。このコマンドを実行すると、画面上にメッセージが数行出力されます。本質的には、このコマンドはユーザーのシステム設定に応じたビルド用 Makefile を生成します。configure の実行時にエラーが発生した場合、ヘッダーファイルやユーティリティプログラムが不足している可能性があります。インストールしてから続行してください。

  7. configure スクリプトの実行が正常終了したら、Apache をコンパイルできます。それには、次のように make コマンドを実行します。
  8. $ make

    このコマンドを実行すると、Apache ソースコードのコンパイルと Apache のリンクを実行中であることを示すメッセージが画面上に数行出力されます。通常、この処理でエラーは発生しません。エラーが発生した場合は、Apache のすべてのライブラリファイルとユーティリティプログラムが正しくダウンロードされたかどうかを確認してください。

  9. ここで、Apache をインストールします。Apache のインストール先は、/usr/local/apache ディレクトリ (別のディレクトリを指定した場合はそのディレクトリ) になります。Apache をインストールするには、次のコマンドを実行します。
  10. $ make install

    このコマンドが正常に実行されると、システムに Apache がインストールされます。Apache のインストールファイルが次のディレクトリに格納されます。

    /usr/local/apache

    /usr/local/apache/ ディレクトリには、httpd.conf という名前の主要な設定ファイルがインストールされます。

  11. 次のコマンドを実行して Apache を設定します。
  12. $ Configure Apache

    Apache の設定は、httpd.conf ファイルで行われます。このファイルには、Apache サーバーの各種操作パラメータを決定するいくつかの Apache 指令が記述されています。単純な Apache インストールの場合、変更する必要があるのは、次に示すわずかな指令だけです。

    • Server Root “ (Server Root は、Server Root &/usr/local/apache/space/apache など、Apache のインストール先のパス)
    • Port5000” (ユーザーの選択)”

これで、Apache はデフォルトの動作をし、Web サーバーとして機能するように設定されました。その他のパラメータを設定する必要がある場合は、設定ファイルを参照してください。

  1. Apache には apachectl という名前のスクリプトが付属しています。このスクリプトを使うと、Apache の起動、停止、および再起動が簡単に行えます。Apache を起動するには、次のコマンドを実行します。
  2. $ /usr/local/apache/bin/apachectl start

    Apache を停止するには、次のコマンドを実行します。

    use /usr/local/apache/bin/apachectl stop

    Apache の起動後に、Apache が正しくインストールされたかどうかをテストできます。Apache が起動したら、Web ブラウザでアドレス「http://localhost/」を入力します。Apache が正しくインストールされ、実行されている場合は、そのことを示すメッセージを含むテストページが表示されます。


前へ      目次      索引      次へ     
Copyright 2003 Sun Microsystems, Inc. All rights reserved.