CFCACHE | |
説明
ページのコピーをサーバーコンピュータまたはクライアントコンピュータに保管して、ページレンダリングのパフォーマンスを向上させます。これを行うために、このタグでは、ColdFusion ページにより返されたスタティック HTML が含まれるテンポラリファイルが作成されます。 このタグは、ユーザーがページにアクセスするたびにダイナミックコンテンツを取り込む必要がない場合に使用します。 単純な URL や、URL パラメータを含む URL に対して、このタグを使用できます。 |
|
カテゴリ
ページ処理タグ | |
シンタックス<cfcache action = "action" directory = "directory_name" timespan = "value" expireURL = "wildcarded_URL_reference" username = "username" password = "password" port = "port_number" protocol = "protocol"> |
|
関連項目
cfflush、cfheader、cfhtmlhead、cfsetting、cfsilent |
|
ヒストリ
ColdFusion MX:
|
|
使用方法
このタグは、コンテンツが頻繁に更新されないページで使用します。このアクションを実行すると、ユーザーが使用するアプリケーションのパフォーマンスが大幅に向上します。 キャッシュされたページの出力は、クライアントのブラウザまたは ColdFusion サーバー上のファイルに保管されます。ColdFusion では、ページの出力がリクエストされるたびにそれを再生成してダウンロードするのではなく、キャッシュされた出力を使用します。ColdFusion では、timespan 属性の指定、または cfcache action=flush の呼び出しによってキャッシュがフラッシュされる場合にのみ、ページが再生成され、ダウンロードされます。 単純な形式でのキャッシュ機能を有効にするには、timespan 属性を指定した cfcache タグをページの先頭に挿入します。ColdFusion により、指定時間が経過するごとに、キャッシュからページのコピーがフラッシュ (削除) され、新しいコピーがキャッシュされて、ユーザーからのアクセスに備えられます。 action 属性を使用すると、クライアントサイドでのキャッシュを指定することも、クライアントサイドとサーバーサイド両方でのキャッシュ (デフォルト) を指定することもできます。クライアントサイドでのキャッシュの利点は、ColdFusion のリソースが必要ないという点です。ここではブラウザ自身のキャッシュにページが保管され、パフォーマンスが高められます。クライアントサイドとサーバーサイド両方でのキャッシュの利点は、サーバーのパフォーマンスを最適化できるという点です。たとえば、ブラウザにページのキャッシュがない場合、サーバーは自身のキャッシュからデータを取得することができます。Macromedia では、サーバーサイドのみのキャッシュはお勧めしません。クライアントサイドとサーバーサイド両方でのキャッシュをお勧めします。 個人用のコンテンツが含まれているページの場合、action = "clientcache" オプションを使用すると、個人用のページのコピーが他のユーザー用にキャッシュされるおそれがなくなります。 アプリケーションページでデバッグが有効にされていないかぎり、デバッグを設定しても cfcache では無効になります。キャッシュファイルの生成時、cfcache では cfsetting showDebugOutput = "no" が使用されます。 cfcache タグでは、URL パラメータを含む固有の URL それぞれが、キャッシュを行うための独立したページとして評価されます。たとえば、http://server/view.cfm?id=1 の出力と http://server/view.cfm?id=2 の出力は別々にキャッシュされます。 cfcache タグでは、cfhttp タグを使用してキャッシュするページのコンテンツが取得されます。ページへのアクセス中に HTTP エラーが発生した場合、コンテンツはキャッシュされません。ColdFusion エラーが発生すると、そのエラーがキャッシュされます。 詳細については、『ColdFusion MX 開発ガイド』の第13章の「ColdFusion アプリケーションの最適化」 の「変更頻度の低い ColdFusion ページのキャッシュ」を参照してください。 |
|
例<!--- この例では、URL パラメータの順列と同じ数だけ、 キャッシュファイルが作成されます。タイムスタンプが変わらないときに、ページが キャッシュされていることがわかります。---> <cfcache timespan="#createTimeSpan(0,0,10,0)#"> <body> <h3>簡単な出力のテスト</h3> <cfoutput> このページは次の時刻に生成されました : #now()#<br> </cfoutput> <cfparam name = "URL.x" default = "no URL parm passed" > <cfoutput>URL.x の値は # URL.x # です。</cfoutput> |
ACTION | |
オプション | |
Default value: "cache"
|
DIRECTORY | |
オプション | |
Default value: "cf_root/cache"
キャッシュディレクトリの絶対パスです。 |
TIMESPAN | |
オプション | |
Default value: "cfcache action = "flush" が実行されたときにのみ更新されます。"
キャッシュからページがフラッシュされるまでの間隔です。
|
EXPIREURL | |
オプション | |
Default value: "キャッシュされているページすべてを更新します。"
action = "flush" と共に使用します。URL へのリファレンスです。ColdFusion により、URL が指定されたキャッシュディレクトリ内のマッピングと照合されます。ワイルドカードを指定できます。例 : "*/view.cfm?id=*" |
USERNAME | |
オプション | |
ユーザー名です。ページに Web サーバーレベルの認証が必要な場合に、この属性を指定します。 |
PASSWORD | |
オプション | |
パスワードです。ページに Web サーバーレベルの認証が必要な場合に、この属性を指定します。 |
PORT | |
オプション | |
Default value: "現在表示しているページのポート"
URL をリクエストしている Web サーバーのポート番号です。ColdFusion では、cfcache から cfhttp への内部呼び出しにおいて、ページ内の各 URL 変数が変換されます。これにより、ページ内のそのリンクの有効性を保つことができます。 |
PROTOCOL | |
オプション | |
Default value: "現在表示しているページのプロトコル"
キャッシュから URL を作成するときに使用するプロトコル
|