ASP:更新したASP(HTML)が古い内容で表示されるのを回避する:キャッシュ
ASP・VB・Excel (24 items)
2004年09月14日
ASPによるWEBシステム開発では、"Pragma", "no-cache"などの設定を、
IISサーバー側で設定したり、ASP内に処理を埋め込む事で
キャッシュ制御を実現できる。
また下記のような記述をHTMLのmeta属性として記述する事でも可能となる。
基本的には、この辺りの設定で”ユーザーが古い情報を見てしまう”といった、
ユーザーが自身のキャッシュを見てしまう現象は起きなくなるが、
システム開発者は、これらに加えて以下のような点に注意する。
IISサーバー側で設定したり、ASP内に処理を埋め込む事で
キャッシュ制御を実現できる。
また下記のような記述をHTMLのmeta属性として記述する事でも可能となる。
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate" />
<meta http-equiv="Expires" content="-1" />
基本的には、この辺りの設定で”ユーザーが古い情報を見てしまう”といった、
ユーザーが自身のキャッシュを見てしまう現象は起きなくなるが、
システム開発者は、これらに加えて以下のような点に注意する。
※サーバー上でファイル名を変えるだけの修正を行う際は、
ファイル日付に注意する!!
<例>
<対応>
基本的に前述の設定をサーバー上やHTMLに記述する事で、
キャッシュ問題は解決できるが、このような現象も場合によっては起こりうる。
つまり、ファイル名を変える事で、
サーバー上のファイルが以前のものより古くなる為、
ブラウザがファイル日付の新しい、自身のキャッシュの内容を見てしまうのである。
このような修正をする場合は、念の為、ファイル名を変えると同時に、
修正自体は無くともファイル日付を更新するようにしなければならない。
ファイル日付に注意する!!
<例>
(1)サーバー上にほぼ同じ処理を持った”001.asp”と、”001b.asp”が存在。
(2)ファイル日付は、”001.asp”の方が新しい。
(3)ある仕様変更が入り、”001b.asp”の内容のままで対応終了となる。
(4)”001b.asp”を”001.asp”にファイル名変更。
(5)ブラウザで”001.asp”にアクセスすると、”001b.asp”の内容で反映されず、
ファイル名変更前の情報で表示される。
<対応>
基本的に前述の設定をサーバー上やHTMLに記述する事で、
キャッシュ問題は解決できるが、このような現象も場合によっては起こりうる。
つまり、ファイル名を変える事で、
サーバー上のファイルが以前のものより古くなる為、
ブラウザがファイル日付の新しい、自身のキャッシュの内容を見てしまうのである。
このような修正をする場合は、念の為、ファイル名を変えると同時に、
修正自体は無くともファイル日付を更新するようにしなければならない。
前の記事 次の記事