Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)
インプロセスHTTPサーバでは,HTTPリクエストに含まれるURLパターンによってリクエストを振り分けることができます。また,振り分けたリクエストに対するレスポンスをカスタマイズして特定のファイルをクライアントに返すこともできます。リダイレクトするURLへのリクエストに対するレスポンスのステータスコードが300番台の場合,レスポンスボディを自動生成してクライアントにレスポンスを返します。また,指定したファイルをレスポンスボディとして使用することもできます。ファイルを指定する場合,レスポンスのContent-Typeヘッダもあわせて指定します。
自動生成されるレスポンスボディを次に示します。
<HTML><HEAD> <TITLE>ステータスコードおよび説明句</TITLE> </HEAD><BODY> <H1>ステータスコードおよび説明句</H1> </BODY></HTML> |
レスポンスボディが自動生成されるステータスコードおよび説明句を次に示します。
リクエスト処理時にレスポンスボディとして使用するファイルの読み込みに失敗した場合,ステータスコードに300番台が指定されていれば,レスポンスボディを自動生成してクライアントに返します。ステータスコードに200が指定されていれば,ステータス500エラーをクライアントに返します。
リダイレクトによるリクエストの振り分けの定義は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内に指定します。
簡易構築定義ファイルでのリダイレクトによるリクエストの振り分けの定義について次の表に示します。
表5-11 簡易構築定義ファイルでのリダイレクトによるリクエストの振り分けの定義
指定するパラメタ | 設定内容 |
---|---|
webserver.connector.inprocess_http.redirect.list | リダイレクト定義名を指定します。 |
webserver.connector.inprocess_http.redirect.<リダイレクト定義名>.request_url | リダイレクトするリクエストのURLを「/」(スラッシュ)で始まる絶対パスで指定します。 |
webserver.connector.inprocess_http.redirect.<リダイレクト定義名>.redirect_url | リクエストのリダイレクト先のURLを指定します。なお,ステータスコードに200を指定した場合は,URLを指定できません。 |
webserver.connector.inprocess_http.redirect.<リダイレクト定義名>.status | リダイレクトを実行する場合のレスポンスのステータスコードを指定します。 |
webserver.connector.inprocess_http.redirect.<リダイレクト定義名>.file | 特定のファイルをレスポンスとしてクライアントに返す場合にレスポンスボディとして使用するファイルを指定します。なお,ステータスコードに200を指定した場合は,使用するファイルを指定する必要があります。 |
webserver.connector.inprocess_http.redirect.<リダイレクト定義名>.file.content_type | 特定のファイルをレスポンスとしてクライアントに返す場合にレスポンスボディとして使用するファイルのContent-Typeヘッダを指定します。 |
簡易構築定義ファイル,および指定するパラメタの詳細は,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。
リダイレクトによるリクエストの振り分けの設定例について説明します。
: <param> <param-name>webserver.connector.inprocess_http.redirect.list</param-name> <param-value>REDIRECT_1,REDIRECT_2</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_1.request_url</param-name> <param-value>/index.html</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_1.redirect_url</param-name> <param-value>http://host1/new_dir/index.html</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_1.status</param-name> <param-value>302</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_2.request_url</param-name> <param-value>/old_dir/*</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_2.redirect_url</param-name> <param-value>http://host1/new_dir/</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_2.status</param-name> <param-value>301</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_2.file</param-name> <param-value>C:/data/301.html</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_2.file.content_type</param-name> <param-value>text/html; charset=ISO-8859-1</param-value> </param> : |
: <param> <param-name>webserver.connector.inprocess_http.redirect.list</param-name> <param-value>REDIRECT_3</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_3.request_url</param-name> <param-value>/dir1/*</param-value> </param> <param> <param-name>webserver.connector.inprocess_http.redirect.REDIRECT_3.redirect_url</param-name> <param-value>http://host/dir2/</param-value> </param> : |
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.