ここでは、仮想サーバーのコンテンツを設定および管理できる方法について説明します。
「コンテンツ処理」タブ、「一般」タブの順にクリックし、コンテンツ処理の基本設定を編集します。
「ディレクトリ一覧表示」セクションで、次のパラメータを設定します。
フィールド | 説明 |
|---|---|
ディレクトリ一覧表示 | 次のパラメータを使用して、アプリケーションフォルダの起動ページをカスタマイズできます。 |
表示タイプ | 「詳細」、「簡易」、「なし」から選択できます。
|
エラー応答 | ディレクトリ一覧表示が無効な場合に使用するエラー応答ファイルです。 |
初期ページ | ホームページファイルのパスです。 |
インデックスファイル | 仮想サーバーのようこそファイルまたは起動ページのリストを指定します。複数のファイルの場合は、コンマ区切りの値を入力します。 |
HTML 解析では、HTML ファイルに特殊なコマンドがないかサーバーが検索 (HTML を解析) することができます。設定を行うには、「解析対象 HTML/SSI」セクションにある「新規」ボタンをクリックします。HTML 解析が有効になる URI パターンを作成するために、次のフィールドを使用できます。
フィールド | 説明 |
|---|---|
適用先 | 変更は仮想サーバー全体に適用することも、「新規 URI」フィールドで指定した特定の URI パターンに適用することもできます。 |
Execute タグ | exec タグを有効にすると、HTML ファイルでサーバー上の任意のプログラムを実行できるようになります。セキュリティーやパフォーマンス上の理由から、exec タグを許可しないようにすることもできます。 |
解析対象ファイル | 解析対象ファイルを選択します。 .shtml 拡張子を持つファイルだけを解析するか、すべての HTML ファイルを解析するかを選択できます。この選択は、パフォーマンスに影響します。UNIX/Linux を使用している場合には、実行権が有効になっている UNIX/Linux ファイルも、解析対象として選択できます。ただし、これはあまり信頼できない可能性があります。 |
設定を行うには、「ドキュメントフッター」セクションにある「新規」ボタンをクリックします。次のフィールドがドキュメントに含めることができるドキュメントフッターです。仮想サーバー全体、または特定の URI パターンのドキュメントフッターを含めることができます。
「HTTP 圧縮」部分にある「新規」ボタンをクリックします。表示されるページで、圧縮されたコンテンツの提供方法を管理できます。仮想サーバー全体または特定の URI パターンで、事前に圧縮されたコンテンツを提供することも、オンデマンド圧縮を有効にすることもできます。
フィールド | 説明 |
|---|---|
適用先 | 変更は仮想サーバー全体に適用することも、「新規 URI」フィールドで指定した特定の URI パターンに適用することもできます。 |
オンデマンド圧縮 | このオプションを使用してオンデマンド圧縮を有効にします。 |
Vary ヘッダーを挿入 | 「Vary: Accept-encoding」 ヘッダーを挿入するかどうかを指定します。有効に設定されている場合、 「Vary: Accept-encoding」ヘッダーは挿入されません。無効に設定されている場合、 圧縮バージョンのファイルが選択されると、「Vary: Accept-encoding」ヘッダーは常に挿入されます。値はデフォルトで無効に設定されています。 |
フラグメントサイズ | 圧縮率 (一度に圧縮する量) を制御するために圧縮ライブラリ (zlib) で使用する必要のあるメモリーフラグメントサイズ (バイト単位) を指定します。 |
圧縮レベル | ドロップダウンリストを使用して圧縮のレベルを指定します。「なし」または 1 から 9 の値を選択します。値 1 では速度が最高になり、値 9 では圧縮率が最高になります。中間の値では、速度と圧縮との兼ね合いを取ります。 |
基本ドキュメントディレクトリ (ドキュメントルートとも呼ばれる) は、リモートクライアントに対して使用可能にするすべてのファイルの格納先となる、中央ディレクトリです。
基本ドキュメントディレクトリ以外にも、ドキュメントディレクトリを作成できます。そうすれば、あるユーザーが、基本ドキュメントルートにアクセスすることなしに、一連のドキュメントを管理できるようになります。
新しいドキュメントディレクトリの作成
構成を選択します。
構成のリストから構成を選択します。利用可能な構成を取得するには、「構成」タブをクリックします。
仮想サーバーを選択します。
新しいドキュメントディレクトリを追加する必要のある仮想サーバーを選択します。選択された構成に設定された仮想サーバーのリストを取得するには、「仮想サーバー」タブをクリックします。
「ドキュメントディレクトリ」タブをクリックします。
「新規ドキュメントディレクトリ」ボタンをクリックします。下記のパラメータを設定します。
URL プレフィックス — ディレクトリにマップする必要のある URI プレフィックス。
ディレクトリパス — ドキュメントを格納するための絶対サーバーパスと有効なディレクトリ。
Sun Java System Web Server では、管理コンソール GUI を使って CGI ドキュメントディレクトリを追加できます。
新しい CGI ドキュメントディレクトリを追加するには、次のタスクを実行します。
「構成」タブをクリックし、構成のリストから構成を選択します。
「仮想サーバー 」サブタブをクリックし、仮想サーバーのリストから仮想サーバーを選択します。
「コンテンツ処理 」サブタブ、「CGI」サブタブを順次クリックします。
「新規 」ボタンをクリックして新しい CGI ドキュメントディレクトリを追加します。
次の表に示すように、「URI プレフィックス」フィールドと「ディレクトリ」フィールドに必要な値を指定します。「 了解」ボタンをクリックします。「配備保留中」リンク、「配備」の順にクリックし、変更した構成を配備します。
次の表で、CGI パラメータについて説明します。
表 5 CGI パラメータ
パラメータ | 説明 |
|---|---|
プレフィックス | このディレクトリに対して使用する URL プレフィックスを入力します。つまり、ここで入力したテキストが、CGI プログラムのディレクトリとして URL 内に現れます。 たとえば、cgi-bin を URL プレフィックスとして入力した場合、これらの CGI プログラムへの URL はすべて、次の構造を持ちます。 http://yourserver.domain.com /cgi-bin/program-name |
CGI ディレクトリ | 「CGI ディレクトリ」テキストフィールドには、ディレクトリの場所を絶対パスで入力します。このディレクトリはドキュメントルートの下になくてもかまわないことに注意してください。これが、URL プレフィックスを指定する必要がある理由です。 注 – ユーザーが指定する URL プレフィックスは、実際の CGI ディレクトリと異なっていてもかまいません。 |
ユーザー | CGI プログラムの実行時に使用するユーザーの名前を指定します。 |
グループ | CGI プログラムの実行時に使用するグループの名前を指定します。 |
ディレクトリ変更 | 実行開始前のディレクトリ変更先となるディレクトリを指定します。UNIX ベースのシステムのみで有効です。 |
優先順位 | 優先順位値、つまり CGI プログラムの優先順位を決定する、サーバーからの相対的な増分を指定します。 通常、サーバーは優先順位値 0 で実行され、優先順位の増分は、0 (CGI プログラムがサーバーと同じ優先順位で実行される) から 19 (CGI プログラムがサーバーよりも大幅に低い優先順位で実行される) までになります。CGI プログラムの優先順位をサーバーの優先順位よりも上げるために優先順位の増分に -1 を指定することも可能ですが、これはお勧めできません。 |
既存の CGI ディレクトリを削除するには、CGI ディレクトリを選択し、「削除」ボタンをクリックします。既存のディレクトリの URL プレフィックスやディレクトリを変更する場合は、ディレクトリリンクをクリックします。
指定したディレクトリ内に CGI プログラムをコピーします。これらのディレクトリ内のファイルはすべて CGI ファイルとして処理されるので、ディレクトリ内に HTML ファイルを入れないように注意してください。
CGI をファイルタイプとして指定するには、次のタスクを実行します。
「構成」タブをクリックし、構成のリストから構成を選択します。
「仮想サーバー 」サブタブをクリックし、仮想サーバーのリストから仮想サーバーを選択します。
「コンテンツ処理 」サブタブ、「CGI」サブタブを順次クリックします。
「ファイルタイプとしての CGI」セクションにある「新規」ボタンをクリックします。
これらの設定は、仮想サーバーレベルで適用することも、特定の URI に制限することもできます。前述の表で説明した残りのパラメータを設定します。
CGI ファイルはファイル拡張子 .bat、.exe、または .cgi を持つ必要があります。CGI ファイルでなくてもこれらの拡張子を持っていれば、サーバーによって CGI ファイルとして処理されるため、エラーが発生します。
URL リダイレクションを使えば、ある HTTP URL へのドキュメント要求を別の HTTP URL にリダイレクトできます。URL 転送つまりリダイレクションは、ファイルを別のディレクトリやサーバーに移動したなどの理由により URL が変わったことを、サーバーがユーザーに通知するための手段の 1 つです。リダイレクションを使用すれば、あるサーバー上のドキュメントに対する要求を別のサーバー上のドキュメントにシームレスに送信することもできます。
たとえば、http://www.sun.com/info/movies をプレフィックスfilm.sun.com に転送するようにした場合、URL http://www.sun.com/info/movies は http://film.sun.com/info/movies にリダイレクトされます。
1 つのサブディレクトリ内のすべてのドキュメントに対する要求を、特定の URL にリダイレクトする必要が生じる場合があります。たとえば、トラフィックが混み合う原因になっているために、またはドキュメントを提供する理由がなくなったために、ディレクトリを削除する必要がある場合は、ドキュメントに対する要求をドキュメントが利用できなくなった理由を説明するページにリダイレクトできます。たとえば、/info/movies のプレフィックスを http://www.sun.com/explain.html にリダイレクトできます。
URL リダイレクションの設定は、仮想サーバーレベルで行えます。
URL リダイレクションを構成するには、次の手順を実行します。
「構成」タブをクリックし、構成のリストから構成を選択します。
「仮想サーバー 」サブタブをクリックし、仮想サーバーのリストから仮想サーバーを選択します。
「コンテンツ処理」サブタブをクリックし、「URL リダイレクト」サブタブをクリックします。
「 新規 」ボタンをクリックし、新しい URL リダイレクトルールを追加します。
次の表に説明されているフィールドに必要な値を指定します。「保存」ボタンをクリックします。必要に応じて、構成の「変更を適用」ボタンをクリックします。
次の表では、新しい URL リダイレクトルールの追加に必要なフィールドについて説明します。
表 6 フィールドの説明 > 新しい URL リダイレクトの追加
仮想サーバーでのエラー発生時にクライアントに詳細メッセージを送信するための、カスタムのエラー応答を指定できます。送信するファイル、実行する CGI プログラムのいずれかを指定できます。
たとえば、ある特定のディレクトリでエラーが発生した際のサーバーの動作方法を変更できます。アクセス制御によって保護されたサーバーの部分にクライアントが接続しようとした場合、アカウントの取得方法に関する情報を含むエラーファイルを返すことができます。
カスタムエラー応答を有効にするには、まず、エラーへの応答として、送信する HTML ファイル、実行する CGI プログラムのいずれかを作成する必要があります。
カスタムエラーページを追加するには、次の手順に従います。
「構成」タブをクリックし、構成のリストから構成を選択します。
「仮想サーバー 」サブタブをクリックし、仮想サーバーのリストから仮想サーバーを選択します。
「コンテンツ処理 」サブタブ、「エラーページ」サブタブを順次クリックします。
「新規」ボタンをクリックしてカスタムエラーページを追加します。
変更するエラーコードごとに、エラー応答が格納されたファイルまたは CGI への絶対パスを指定します。
「了解」をクリックしてエラーページのリストに戻ります。
逆プロキシとは、クライアントからは Web サーバー (元のサーバー) のように見えるが、実際には受信した要求を 1 つ以上の元のサーバーに転送するようなプロキシのことです。逆プロキシは自身を元のサーバーとして提示するため、逆プロキシを使用するようにクライアントを構成する必要はありません。指定された逆プロキシが、同じ構成の複数の元のサーバーに要求を転送するように設定することで、逆プロキシをアプリケーションレベルのソフトウェアのロードバランサとして動作させることができます。
注 – 通常の配備では、ブラウザと元のサーバーの間に 1 つ以上の逆プロキシが配備されます。
新規プロキシ URI の追加
「構成」タブをクリックし、構成を選択します。
「仮想サーバー」タブをクリックし、仮想サーバーを選択します。
「コンテンツ処理」>「逆プロキシ」タブをクリックします。
「新規プロキシ URI 」ボタンをクリックします。
次の各パラメータの値を指定します。
URI — 逆プロキシの URI
サーバー URL — サーバー名のコンマ区切りのリストです。サーバー名は、https://origin.server.com や origin.server.com など、ホスト名、完全修飾ドメイン名、IP アドレス、または パスコンポーネントのない URL プレフィックスにする必要があります。複数の値が指定された場合、サーバーはその指定されたサーバー間で負荷分散を行います。
逆プロキシ設定を設定するには
「構成」タブをクリックし、構成を選択します。
「仮想サーバー」タブをクリックし、仮想サーバーを選択します。
「コンテンツ処理」>「逆プロキシ」タブをクリックします。
URI をクリックします。
次のパラメータを編集できます。
URI — 逆プロキシの URI
サーバー URL — リモートサーバーの URL をコンマで区切ったもの。複数の値が指定された場合、サーバーはその指定されたサーバー間で負荷分散を行います。
Sticky Cookie — 応答内に存在する場合に、後続の要求がその元のサーバーに固定されることになる Cookie の名前。
Sticky URI パラメータ — ルート情報を調べるための URI パラメータの名前。要求 URI にこの URI パラメータが含まれていて、かつその値にコロン「:」 とルート ID が含まれていると、そのルート ID で特定される元のサーバーに要求が「固定」されます。
ルートヘッダー — ルート ID を元のサーバーに伝達するために使用される HTTP 要求ヘッダーの名前。
ルート Cookie — 応答内に Sticky Cookie を見つけたときに、サーバーによって生成される Cookie の名前。route-cookie Cookie に格納されたルート ID を使えば、サーバーは後続の要求を同じ元のサーバーに転送できます。
ヘッダーを書き換え — 要求ヘッダーのコンマ区切りのリスト。
FastCGI は、外部アプリケーションと Web サーバー間の標準インタフェースである CGI (Common Gateway Interface) のオープンな拡張です。FastCGI アプリケーションは CGI と同じく、隔離された個別のプロセス内で実行されます。FastCGI アプリケーションを使用すると、CGI アプリケーションよりも優れたパフォーマンスを実現できます。
FastCGI プラグインにより、スケーラブルな方法で安全に、Sun Java System Web Server を一般的な他社製動的コンテンツ生成技術 (PHP、Perl、Python など) とともに使用できます。FastCGI プラグインでは、FastCGI プロトコルのクライアント側が実装されています。このプロトコルを使用すると、動的コンテンツの生成側 (およびコンテンツエンジン) では、多くの Web サーバーが利用できる共通でスケーラブルな API を実装できます。
FastCGI と、FastCGI プラグインで提供される SAF については、『Sun Java System Web Server 管理ガイド』を参照してください。
FastCGI ハンドラを追加するには
「構成」タブをクリックし、構成を選択します。
「仮想サーバー」タブをクリックし、仮想サーバーを選択します。
「コンテンツ処理」、「FastCGI」タブの順にクリックします。
「FastCGI が有効な URI」テーブルの下にある「新規」をクリックします。
次のパラメータを編集できます。
適用先 — 仮想サーバー全体、または特定の URI パターンに対して FastCGI ハンドラを追加できます。
ロール — FastCGI は、4 種類あるアプリケーションの「ロール」をサポートする拡張機能を備えています。FastCGI ハンドラを作成するロールを選択します。
レスポンダ — レスポンダは基本の FastCGI ロールで、今日の CGI で提供される簡単な機能に対応します。
フィルタ — FastCGI アプリケーションは要求されたサーバーファイルをフィルタしてからクライアントに送信します。クライアントがその MIME タイプの URL を要求すると、Web Server によって、フィルタアプリケーションへの要求を送信する service-fastcgi SAF が呼び出されます。このフィルタアプリケーションは、指定した URL にあるファイルを処理して、応答をクライアントに送り戻します。
オーサライザ — FastCGI プログラムは要求に対するアクセス制御の判断を実行します (ユーザー名とパスワードによるデータベース検索の実行など)。
エラー — error-fastcgi エラー SAF は、FastCGI プラグインがエラーを検出した場合に呼び出されます。ユーザー指定のエラーページを表示するために使用されます。
MIME タイプ — FastCGI ハンドラの MIME タイプです。
バインドパス — UNIX Domain Socket (UDS) 名、名前付きパイプ、または「host:port」の形式です。
アプリケーションパス — 要求を処理する FastCGI サーバーアプリケーションのパスです。
引数 — FastCGI アプリケーションプロセスに引数として渡されるコンマ区切りの値です。
環境変数 — FastCGI サーバーアプリケーションプロセスに環境変数として渡されるコンマ区切りの値のペアです。
Web ブラウザで Web サーバーとの通信に使用する HTTP プロトコルでは、サーバーが返す情報のタイプの判別に URL のファイル拡張子は使用されません。URL の末尾にファイル拡張子がない場合もあります。代わりに、Web サーバーは、Web ブラウザの HTTP 要求に応答するときに、Content-type: ヘッダーを使用して正しい MIME タイプを指定します。
構成レベルと仮想サーバーレベルの両方で、MIME タイプを設定できます。
次の操作を実行して、仮想サーバーの MIME マッピング設定を表示できます。
「構成」タブをクリックし、構成のリストから構成を選択します。
「仮想サーバー 」サブタブをクリックし、仮想サーバーのリストから仮想サーバーを選択します。
「コンテンツ処理」サブタブ、「MIME タイプ」サブタブの順にクリックします。
「MIME マッピング」ページには、選択した構成の MIME ヘッダーと値のリストがあります。新しい MIME マッピングを追加するには、次の操作を実行します。
「新規」ボタンをクリックし、次のプロパティーを設定します。
MIME ヘッダー — Content-type、Content-encoding、および Content-language から選択します。
MIME 値 — MIME ヘッダーの値を入力します。たとえば、Content-type の MIME ヘッダーの場合、MIME 値には text/plain、text/html などがあります。
ファイルサフィックス — MIME 値のファイル拡張子です。たとえば、text/html の MIME 値の場合、ファイル拡張子には htm/html があります。
「保存」ボタンをクリックし、新しい MIME マッピングを保存します。