この章では、サード・パーティのWebアプリケーション・サーバーでOracle Web Cacheを構成する方法について説明します。
この章の項目は次のとおりです。
|
注意:
|
Oracle Web CacheはWebアプリケーション・サーバーに対して透過的であるため、Webアプリケーション・サーバーは、Oracle Web CacheからのHTTPリクエストを、ブラウザから直接送信される他のHTTPリクエストと同じように処理します。次にWebアプリケーション・サーバーはレスポンスを生成し、HTTPメッセージとしてOracle Web Cacheに返します。
Oracle Web Cacheは、HTTPを完全にサポートしているため、HTTPに準拠しているすべてのWebアプリケーション・サーバーとの連携が可能です。Webアプリケーション・サーバーがHTTPレスポンスを生成するかどうかの選択方法は、Oracle Web Cacheとは関係ありません。
サイトが使用するWebアプリケーション・サーバーのタイプは、主にそのサイトが実行しているアプリケーションのタイプに依存します。たとえば、顧客がActive Server Page(ASP)を実行する場合は、Microsoft Internet Information Server(IIS)をWebアプリケーション・サーバーとして選択します。
Oracle Web Cacheを、Oracle HTTP Serverの場合と同じように、ホスト名とリスニング・ポート番号を指定してサード・パーティのWebアプリケーション・サーバーと通信するように構成します。この章で説明する製品のデフォルトのリスニング・ポートを、表12-1に示します。
表12-1 サード・パーティのWebアプリケーション・サーバーのデフォルトのリスニング・ポート
| Webアプリケーション・サーバー | ポート |
|---|---|
|
IBM WebSphere Application Serverバージョン6.0 |
|
|
Apache Tomcatバージョン4.1 |
|
|
Microsoft IIS 6.0 |
80 |
Oracle Web Cacheをサード・パーティのWebアプリケーション・サーバーと通信するように構成するには、次の作業を行います。
サード・パーティのWebアプリケーション・サーバーをOracle HTTP Serverと同様に使用する場合は、キャッシュ・ルールと有効期限ルールを割り当てます。次のようなコンテンツをキャッシュするかどうかを選択できます。
静的オブジェクト
同じURLの複数バージョンのオブジェクト
セッションCookieまたは埋込みURLパラメータをサポートしているページ
単純なパーソナライズを含むページ
Edge Side Includes(ESI)フラグメントの動的アセンブリ
任意のタイミングで、オブジェクトに有効期限を割り当てたり、オブジェクトを無効化したりすることもできます。第6章「コンテンツのキャッシュと圧縮」および第7章「コンテンツの無効化」を参照してください。
Oracle Web Cacheで、IBM Websphere Application Serverからの静的コンテンツがフェッチされるときに、IBM Websphere Application Serverからは、Oracle Web CacheのSurrogate-Capability: orcl="ESI/1.0"リクエストに対するレスポンスとしてSurrogate-Controlレスポンス・ヘッダー内のcontent="ESI/1.0+"ディレクティブが送信されます。Oracle Web Cacheでは、ページ・レンダリングの問題およびエラーを排除するためにESI/1.0+機能が無視されます。Oracle Web Cacheがキャッシュ・ソリューションとして配置されている場合、制御ディレクティブの値がこのように異なることによって、Webアプリケーションが未定義の動作を起こす可能性があります。
次の手順に従って、IBM Websphere Application ServerからESI/1.0以前ではなくESI/1.0が送信されるようにします。
WebSphere Application Serverの管理コンソールで、「Servers」→「Application Server」にナビゲートします。
「Application servers」ページが表示されます。
「Application servers」ページで、server1アプリケーション・サーバーを選択します。
server1は、IBM Websphere Application Serverをデフォルトのオプションでインストールするときのサーバー名です。他の名前を指定した場合は、その名前を選択します。
「Configuration」タブの「Server Infrastructure」セクションで、「Java and Process Management」を選択し、「Process Definition」を選択します。
「Additional Properties」セクションで、「Java Virtual Machine」を選択してから「Custom Properties」を選択します。
「New」をクリックしてエントリを作成します。
「Name」フィールドに、com.ibm.servlet.file.esi.controlと入力します。
「Value」フィールドに、max-age=300, cacheid="URL", content="ESI/1.0"と入力します。
「Apply」をクリックしてから、WebSphere Application Serverを保存して再起動します。
WebSphere Application Serverのインストールには、JSP、JavaサーブレットおよびEJBのサンプルが含まれています。この項では、次のコンテンツをキャッシュするようにOracle Web Cacheを構成する方法について説明します。
snoopサーブレットは、ブラウザにより送信されるリクエスト情報、ヘッダーおよびパラメータの取得および使用を表示します。これを使用して、Oracle Web Cacheが動的コンテンツをキャッシュする方法を説明します。
snoopサーブレットをキャッシュするには、次の手順を実行します。
第12.1.1項の説明に従って、Oracle Web CacheがWebSphere Application Serverと通信するように構成されていることを確認します。
WebSphere Application Serverを起動し、次のURLにアクセスします。
http://hostname/snoop
ブラウザにより送信されたリクエスト情報、ヘッダーおよびパラメータが表示されていることに注意してください。
第6.8項の説明に従って、snoop出力のキャッシュ・ルールを作成します。
snoop出力に対するキャッシュ・ルールを作成するときは、「キャッシュ・ルールの作成」ページで次のように構成してください。
「キャッシュ」チェック・ボックスを選択します。
「URL一致条件」セクションで、「パス接頭辞」を選択し、/snoopと入力します。
「HTTPメソッド」セクションで、「GET」をクリックします。
次のURLを使用して、ブラウザにOracle Web Cacheを指定します。
http://web_cache_hostname:admin_port/snoop
ポートを決定する方法は、第2.11.1.1項を参照してください。
出力は、WebSphere Application Serverから直接snoopにアクセスした場合と同じです。この場合、Oracle Web Cacheはsnoopの出力をキャッシュし、レスポンスをブラウザに送信します。
第8.6項の説明に従ってキャッシュの内容を表示し、snoopがキャッシュされていることを確認します。
ページを再ロードすると、WebSphere Application Serverに直接アクセスするよりも速く、キャッシュされたレスポンスが表示されます。
Calendar JSPでは、ユーザー入力に基づいてカレンダが生成されます。このサンプルは、snoopサーブレットのような、あらかじめ配置されたWebSphereサンプルではありません。このサンプルを見つけるには、IBM WebSphere Application Serverのサンプル・ギャラリーにあるドキュメントに記述されているとおり、Technology Samplesをインストールする必要があります。このJSPを使用して、Oracle Web CacheがセッションCookieを持つページをどのようにキャッシュしているのかを説明します。
セッション・エンコードされたURLのSimpleTag.jspをキャッシュするには、次の手順を実行します。
WebSphere Application Serverを起動し、ブラウザをCookieを受け入れるように設定し、次のURLにアクセスします。
http://hostname/TechnologySamples/Calendar
このページに表示されるフォームでは、月や年など、カレンダを作成するための設定を入力するように要求されます。このアプリケーションを使用するには、次の手順を実行します。
なんらかの値を入力し、「Continue」をクリックします。
「Day」フィールドと「Memo」フィールドになんらかの値を入力し、「Add Memo」をクリックします。
「Generate Calendar」をクリックします。
第6.7項の説明に従って、有効期限ルールを作成します。
「有効期限ポリシーの作成」ダイアログ・ボックスで、次の手順を実行します。
「オブジェクトの有効期限」セクションで、「エントリ・キャッシュの後」を選択し、「時間制限」フィールドに60秒を入力します。
「期限切れのオブジェクトに対するアクション」セクションで、「即時削除」を選択します。
第6.8.6項の説明に従って、セッション・キャッシュ・ルールを作成します。
セッション・キャッシュ・ルールを構成する場合は、次の手順を実行します。
「セッション構成」ページの「セッション定義」セクションで、セッション定義を作成します。
「セッション名」フィールドに、IBMSessionと入力します。
「Cookie名」フィールドに、JSESSIONIDと入力します。
「URL POST本体のパラメータ」フィールドに、jsessionidと入力します。
「セッション構成」ページの「セッション・ポリシー構成」セクションで、IBMSessionという名前の2つのポリシーを作成します。
最初のIBMSessionポリシーの「キャッシュ」列で、「セッションを使用」オプションを選択します。
2つ目のIBMSessionポリシーの「キャッシュ」列で、「セッションを使用しない」オプションを選択します。
「デフォルト値の置換」チェック・ボックスは選択しないでください。
Calendarに対する新しいキャッシュ・ルールを作成します。
Calendar出力に対するキャッシュ・ルールを作成するときは、「キャッシュ・ルールの作成」ページの「一般」タブで次のように構成します。
「キャッシュ」チェック・ボックスを選択します。
「有効期限」リストで、「キャッシュ・エントリの60秒後に期限が切れ、即時に削除」を選択します。
「URL一致条件」セクションで、「パス接頭辞」を選択し、/TechnologySamples/Calendarと入力します。
「HTTPメソッド」セクションで、「GET」をクリックします。
「キャッシュ・ルールの作成」ページの「セッション」タブで、両方のIBMSessionセッションを選択し、一方には「セッションを使用」を設定し、もう一方には「セッションを使用しない」を設定します。
次のURLを使用して、ブラウザにOracle Web Cacheを指定します。
http://web_cache_hostname:WebCache-admin_port/TechnologySamples/Calendar
ポートを決定する方法は、第2.11.1.1項を参照してください。
出力は、WebSphere Application Serverから直接Calendarにアクセスした場合と同じです。この場合、Oracle Web CacheはCalendar出力をキャッシュします。
第8.6項の説明に従ってキャッシュの内容を表示し、Calendarがキャッシュされていることを確認します。
ページを再ロードすると、WebSphereサーバーに直接アクセスするよりも速く、キャッシュされたレスポンスが表示されます。
このURLの有効期限ルールは60秒に設定されているため、Oracle Web Cacheはキャッシュされた内容を60秒後に期限切れにし、ユーザーが次にページをリクエストしたときにその内容を反映させます。
Oracle Web Cacheの配置後、ブラウザにHTTP 404 Page not foundエラーが表示される場合は、次の手順を実行します。
WebSphere ServerのWAS_home/config/cells/plugin-cfg.xmlファイルで、<VirtualHost Name="*:WebCache-admin_port"/>を追加します。
WebSphere Application Serverの管理コンソールで、「Environment」→「Virtual Hosts」にナビゲートします。
プロンプトに従って、新しい仮想ホストを追加します。
Apache Tomcatバージョン4.1はサーブレット・コンテナです。これはApache Jakartaプロジェクトに含まれています。Apache Tomcatのインストールには、JSPおよびJavaサーブレットのサンプルがいくつか含まれています。この項では、次のコンテンツをキャッシュするようにOracle Web Cacheを構成する方法について説明します。
インストールについては、Apache Tomcatバイナリ内の説明に従ってください。Apache Tomcatには、Java Development Kit(JDK)が必要です。
詳細は、次を参照してください。
Apache Tomcatの詳細は、http://jakarta.apache.org/tomcat/を参照してください。
JDKのダウンロード方法およびインストール方法の詳細は、http://java.sun.comを参照してください。
snoop.jspは、ブラウザによって送信されるリクエスト情報、ヘッダーおよびパラメータの取得および使用を表示します。これを使用して、Oracle Web Cacheが動的コンテンツをキャッシュする方法を説明します。
はじめに、次の手順を実行します。
第12.1.1項の説明に従って、Oracle Web CacheがApache Tomcatサーバーと通信するように構成されていることを確認します。
Apache Tomcatサーバーを起動し、次のURLにアクセスします。
http://web_cache_hostname:WebCache-admin_port/examples/jsp/snp/snoop.jsp
ブラウザにより送信されたリクエスト情報、ヘッダーおよびパラメータが表示されていることに注意してください。
コンテンツをキャッシュするには、次の手順を実行します。
第6.8項の説明に従って、snoop出力のキャッシュ・ルールを作成します。
snoop出力に対するキャッシュ・ルールを作成するときは、「キャッシュ・ルールの作成」ページで次のように構成してください。
「キャッシュ」チェック・ボックスを選択します。
「URL一致条件」セクションで、「パス接頭辞」を選択し、/examples/jsp/snp/snoop.jspと入力します。
「HTTPメソッド」セクションで、「GET」をクリックします。
次のURLを使用して、ブラウザにOracle Web Cacheを指定します。
http://web_cache_hostname:admin_port/eexamples/jsp/snp/snoop.jsp
ポートを決定する方法は、第2.11.1.1項を参照してください。
出力は、Apache Tomcatから直接snoopにアクセスした場合と同じです。この場合、Oracle Web Cacheはsnoopの出力をキャッシュし、レスポンスをブラウザに送信します。
第8.6項の説明に従ってキャッシュの内容を表示し、snoopがキャッシュされていることを確認します。
ページを再ロードすると、Apache Tomcatに直接アクセスするよりも速く、キャッシュされたレスポンスが表示されます。
SessionServletは、HttpSessionクラスを使用してブラウザがサーブレットを訪問した回数を記録するHTTPサーブレットの単純なサンプルです。このサンプルを使用して、Oracle Web Cacheがセッション・エンコードされたURLを持つページをどのようにキャッシュしているのかを説明します。
このサーブレットはApache Tomcatバイナリに含まれていない場合があります。このサンプルはWebから入手するか、例12-1のサーブレットのコードを使用することもできます。
例12-1 Apache Tomcatバイナリ
/*
* @(#)SessionServlet.java 1.5 1.5
*
* Copyright (c) 1996-1998 Sun Microsystems, Inc. All Rights Reserved.
*
* This software is the confidential and proprietary information of Sun
* Microsystems, Inc. ("Confidential Information"). You shall not
* disclose such Confidential Information and shall use it only in
* accordance with the terms of the license agreement you entered into
* with Sun.
*
* SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
* SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR ANY DAMAGES
* SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
* THIS SOFTWARE OR ITS DERIVATIVES.
*
* CopyrightVersion 1.0
*/
package sunexamples;
import java.io.*;
import java.util.Enumeration;
import javax.servlet.*;
import javax.servlet.http.*;
/**
* This is a simple example of an HTTP Servlet that uses the HttpSession
* class
*
* Note that in order to guarantee that session response headers are
* set correctly, the session must be retrieved before any output is
* sent to the client.
*/
public class SessionServlet extends HttpServlet {
public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
//Get the session object
HttpSession session = req.getSession(true);
//Get the output stream
ServletOutputStream out = res.getOutputStream();
res.setContentType("text/html");
out.println("<HEAD><TITLE> SessionServlet Output " +
"</TITLE></HEAD><BODY>");
out.println("<h1> SessionServlet Output </h1>");
//Here's the meat
Integer ival = (Integer) session.getValue("sessiontest.counter");
if (ival==null) ival = new Integer(1);
else ival = new Integer(ival.intValue() + 1);
session.putValue("sessiontest.counter", ival);
out.println("You have hit this page <b>" + ival + "</b> times.<p>");
// encodeURL Encodes the specified URL by including the session ID in it
// if cookies are not turned on or not supported by the browser
out.println("Click <a href=" + res.encodeURL("/session.html") +
">here</a>");
out.println(" to ensure that session tracking is working even if" +
" cookies aren't supported.<br>");
out.println(" Note that by default URL rewriting is not enabled due" +
" to it's expensive overhead.");
out.println("<p>");
out.println("<h3>Request and Session Data:</h3>");
out.println("Session ID in Request: " + req.getRequestedSessionId());
out.println("<br>Session ID in Request from Cookie: " +
req.isRequestedSessionIdFromCookie());
out.println("<br>Session ID in Request from URL: " +
req.isRequestedSessionIdFromURL());
out.println("<br>Valid Session ID: " +
req.isRequestedSessionIdValid());
out.println("<h3>Session Data:</h3>");
out.println("New Session: " + session.isNew());
out.println("<br>Session ID: " + session.getId());
out.println("<br>Creation Time: " + session.getCreationTime());
out.println("<br>Last Accessed Time: " +
session.getLastAccessedTime());
out.println("<br><a href=\"/examples/simple_servlets\">Up</a>");
out.println("</BODY>");
out.close();
}
public String getServletInfo() {
return "A simple session servlet";
}
}
はじめに、次の手順を実行します。
Apache Tomcat環境でSessionServlet.javaファイルをコンパイルします。
SessionServlet.classを/examples/servlets/ディレクトリにコピーします。このディレクトリには、別のサーブレットのサンプルが存在する場合があります。
第12.1.1項の説明に従って、Oracle Web CacheがApache Tomcatと通信するように構成されていることを確認します。
Cookieを受け入れないようにブラウザを構成します。
これは、この例でセッション・エンコードされたURLを使用するために必須です。
Apache Tomcatを起動し、次のURLにアクセスします。
http://hostname/examples/servlets/SessionServlet
ページにブラウザの訪問回数が表示されることに注意してください。「here」と表示されたリンクをクリックすると、セッションIDがURL内でエンコードされることに注意してください。ページを更新または再ロードするたびに、カウンタの数値が1つずつ増えます。
コンテンツをキャッシュするには、次の手順を実行します。
第6.7項の説明に従って、有効期限ルールを作成します。
「有効期限ポリシーの作成」ダイアログ・ボックスで、次の手順を実行します。
「オブジェクトの有効期限」セクションで、「エントリ・キャッシュの後」を選択し、「時間制限」フィールドに60と入力します。
「期限切れのオブジェクトに対するアクション」セクションで、「即時削除」を選択します。
第6.8.6項の説明に従って、セッション・キャッシュ・ルールを作成します。
セッション・キャッシュ・ルールを構成する場合は、次の手順を実行します。
「セッション構成」ページの「セッション定義」セクションで、セッション定義を作成します。
「セッション名」フィールドに、ApacheSessionと入力します。
「Cookie名」フィールドに、JSESSIONと入力します。
「URL POST本体パラメータ」フィールドに、jsessionidと入力します。
「セッション構成」ページの「セッション・ポリシー構成」セクションで、ApacheSessionという名前の2つのポリシーを作成します。
最初のApacheSessionポリシーの「キャッシュ」列で、「セッションを使用」オプションを選択します。
2つ目のApacheSessionポリシーの「キャッシュ」列で、「セッションを使用しない」オプションを選択します。
「デフォルト値の置換」チェック・ボックスは選択しないでください。
Sessionに対する新しいキャッシュ・ルールを作成します。
SessionServletサーブレット出力に対するキャッシュ・ルールを作成するときは、「キャッシュ・ルールの作成」ページの「一般」タブで次のように構成します。
「キャッシュ」チェック・ボックスを選択します。
「有効期限」リストで、「キャッシュ・エントリの60秒後に期限が切れ、即時に削除」を選択します。
「URL一致条件」セクションで、「パス接頭辞」を選択し、/examples/servlets/SessionServletと入力します。
「HTTPメソッド」セクションで、「GET」をクリックします。
「キャッシュ・ルールの作成」ページの「セッション」タブで、両方のApacheSessionセッションを選択し、一方には「セッションを使用」を設定し、もう一方には「セッションを使用しない」を設定します。
第6.8.6項の説明に従って、セッション・キャッシュ・ルールを作成します。
次のURLを使用して、ブラウザにOracle Web Cacheを指定します。
http://web_cache_hostname:WebCache-admin/examples/servlets/SessionServlet
ポートを決定する方法は、第2.11.1.1項を参照してください。
出力は、Apache Tomcatから直接Sessionにアクセスした場合と同じです。この場合、Oracle Web CacheはSessionサーブレット出力をキャッシュします。ページを更新または再ロードした場合に、カウンタの数値が変わらないことに注意してください。これは、Oracle Web Cacheがコンテンツを表示し、リクエストがApache Tomcatに到達しないためです。
第8.6項の説明に従ってキャッシュの内容を表示し、Sessionサーブレットがキャッシュされていることを確認します。
ページを再ロードすると、Apache Tomcatサーバーに直接アクセスするよりも速く、キャッシュされたレスポンスが表示されます。
このURLの有効期限ルールは60秒に設定されているため、Oracle Web Cacheはキャッシュされた内容を60秒後に期限切れにし、ユーザーが次にページをリクエストしたときにその内容を反映させます。
Microsoft IISのインストールには、いくつかのASPサンプルが含まれています。この項では、次のコンテンツをキャッシュするようにOracle Web Cacheを構成する方法について説明します。
ServerVariables_JScript.aspは、ASPスクリプトからサーバー変数情報にアクセスする方法を説明するためのものです。これを使用して、Oracle Web Cacheが動的コンテンツをキャッシュする方法を説明します。
はじめに、次の手順を実行します。
第12.1.1項の説明に従って、Oracle Web CacheがIISと通信するように構成されていることを確認します。
IISを起動し、次のURLにアクセスします。
http://hostname/IISSamples/sdk/asp/interaction/ServerVariables_JScript.asp
ブラウザにより送信されたリクエスト情報、ヘッダーおよびパラメータが表示されていることに注意してください。
コンテンツをキャッシュするには、次の手順を実行します。
第6.8項の説明に従い、次の情報を使用してServerVariables_JScript.aspに対するキャッシュ・ルールを作成します。
ServerVariables_JScript.asp出力に対するキャッシュ・ルールを作成するときは、「キャッシュ・ルールの作成」ページで次のように構成します。
「URL一致条件」セクションで、次のように入力します。
/IISSamples/sdk/asp/interaction/ServerVariables_JScript.asp
「HTTPメソッド」セクションで、「GET」をクリックします。
「キャッシュ・レスポンス」セクションで、「キャッシュ」をクリックします。
次のURLを使用して、ブラウザにOracle Web Cacheを指定します。
http://web_cache_hostname:WebCache-admin_port/eIISSamples/sdk/asp/interaction/ServerVariables_JScript.asp
ポートを決定する方法は、第2.11.1.1項を参照してください。
出力は、IISから直接ServerVariables_JScript.aspにアクセスした場合と同じです。この場合、Oracle Web CacheはServerVariables_JScript.asp出力をキャッシュし、リクエストをブラウザに送信します。
第8.6項の説明に従ってキャッシュの内容を表示し、ServerVariables_JScript.aspがキャッシュされていることを確認します。
ページを再ロードすると、IISに直接アクセスするよりも速く、キャッシュされたレスポンスが表示されます。
Cookie_JScript.aspは、Response.Cookiesコレクションを使用して、スクリプトでCookieを設定する方法や読み取る方法を説明します。これを使用して、Oracle Web CacheがセッションCookieを持つページをどのようにキャッシュしているのかを説明します。
はじめに、次の手順を実行します。
第12.1.1項の説明に従って、Oracle Web CacheがIISと通信するように構成されていることを確認します。
IISを起動し、ブラウザがCookieを受け入れるように設定されていることを確認し、次のURLにアクセスします。
http://hostname/IISSamples/sdk/asp/interaction/Cookie_JScript.asp
URLにアクセスすると、そのページを最後に訪問した日付と時刻がページに表示されます。「Revisit this page」をクリックすると、日付と時刻が更新されます。
コンテンツをキャッシュするには、次の手順を実行します。
第6.7項の説明に従って、有効期限ルールを作成します。
「有効期限ポリシーの作成」ダイアログ・ボックスで、次の手順を実行します。
「オブジェクトの有効期限」セクションで、「エントリ・キャッシュの後」を選択し、「時間制限」フィールドに60と入力します。
「期限切れのオブジェクトに対するアクション」セクションで、「即時削除」を選択します。
第6.8.6項の説明に従って、セッション・キャッシュ・ルールを作成します。
セッション・キャッシュ・ルールを構成する場合は、次の手順を実行します。
「セッション構成」ページの「セッション定義」セクションで、セッション定義を作成します。
「セッション名」フィールドに、MSSessionと入力します。
「Cookie名」フィールドに、CookieJSCriptと入力します。
「URL POST本体パラメータ」フィールドに、jsessionidと入力します。
「セッション構成」ページの「セッション・ポリシー構成」セクションで、MSSessionという名前の2つのポリシーを作成します。
最初のMSSessionポリシーの「キャッシュ」列で、「セッションを使用」オプションを選択します。
2つ目のMSSessionポリシーの「キャッシュ」列で、「セッションを使用しない」オプションを選択します。
「デフォルト値の置換」チェック・ボックスは選択しないでください。
Cookie_JScript.aspに対する新しいキャッシュ・ルールを作成します。
Cookie_JScript.asp出力に対するキャッシュ・ルールを作成するときは、「キャッシュ・ルールの作成」ページの「一般」タブで次のように構成します。
「キャッシュ」チェック・ボックスを選択します。
「有効期限」リストで、「キャッシュ・エントリの60秒後に期限が切れ、即時に削除」を選択します。
「URL一致条件」セクションで、/IISSamples/sdk/asp/interaction/Cookie_JScript.aspと入力します。
「HTTPメソッド」セクションで、「GET」をクリックします。
「キャッシュ・ルールの作成」ページの「セッション」タブで、両方のMSSSessionセッションを選択し、一方には「セッションを使用」を設定し、もう一方には「セッションを使用しない」を設定します。
次のURLを使用して、ブラウザにOracle Web Cacheを指定します。
http://web_cache_hostname:WebCache-admin_port/eIISSamples/sdk/asp/interaction/Cookie_JScript.asp
ポートを決定する方法は、第2.11.1.1項を参照してください。
出力は、IISから直接Cookie_JScript.aspにアクセスした場合と同じです。この場合、Oracle Web CacheはCookie_JScript.asp出力をキャッシュします。キャッシュからこのコンテンツが表示されることを確認するには、ページを再表示するをクリックします。日付と時刻は更新されないことに注意してください。これは、Oracle Web Cacheがキャッシュされたコンテンツを表示し、リクエストがIISに到達しないためです。
第8.6項の説明に従ってキャッシュの内容を表示し、Cookie_JScript.aspがキャッシュされていることを確認します。
ページを再ロードすると、IISサーバーに直接アクセスするよりも速く、キャッシュされたレスポンスが表示されます。
このURLの有効期限ルールは60秒に設定されているため、Oracle Web Cacheはキャッシュされた内容を60秒後に期限切れにし、ユーザーが次にページをリクエストしたときにその内容を反映させます。