- - PR -
ASP.NETでページキャッシュさせない方法
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-10-24 09:38
みなさんレスありがとうございます。
返信遅くなってすみません。 >yuko様 <%@ OutputCache Location="None" VaryByParam="None" %> 入れてみましたが、変化なしでした。 >かずくん様 試してみましたが、変化なしでした。 >どっとねっとふぁん様 >ちょくぱん様 >Jitta様 どっとねっとふぁん様のご指摘の通り、画像データがキャッシュされていると思います。他のテキストデータに関しては正しく更新されます。 Jitta様の言われているのは? やっているのは、ページBでhoge.jpgを出力して、ページAで imgPhoto1.ImageUrl = "hoge.jpg"としています。 ページBで画像データを更新してもファイル名はそのままhoge.jpgのままです。 画像データのキャッシュと言うのは、HTMLレベルでは制御できないのでしょうか? IEでF5キーを押すと画像も更新されるので・・・何らかの方法で出来るのだと思って いました。 しかし、HTMLもしくはWEBサーバー側(HTTPヘッダ情報?)で制御ができないとする とIEのF5(更新)はブラウザ固有の機能なんでしょうか?たとえば、全てのキャッシュ を無効にして読み直す。みたいな・・・ しゅくぱん様やどっとねっとふぁん様が言うように、ファイル名変えないとダメなんでしょうか・・・ | ||||
|
投稿日時: 2006-10-24 09:53
画像のキャッシュをやめたいのなら、 しょくぱんさん がおっしゃっているように、 <img src="image.gif?年月日時分秒" /> のようにすると、 ブラウザが新しいファイルだと勘違い(?)して毎回取得してきませんか? | ||||
|
投稿日時: 2006-10-24 10:13
HTMLレベルでは(そもそも画像データはHTMLファイルじゃないし)指定できませんが、HTTPレベルでは指定できます。HTTPヘッダのCache-Control辺りの指定が相当します。但し、この設定を変更するにはIIS全体の設定を変更するか、ASP.NETを介して(img src=imaeg.aspx)画像データを読み出すか、と言う話になります。
キャッシュの制御に関しては、以下を参照 http://www.microsoft.com/japan/msdn/columns/asp/asp03282002.aspx _________________ 甕星 <mikahosi@abox9.so-net.ne.jp> http://blogs.msmvp.jp/mikahosi/ | ||||
|
投稿日時: 2006-10-24 11:25
>かるあ様
アドバイスありがとうございます。 しょくぱん様の書き込みを勘違いしていました。ファイル名そのものを時分秒を付けて 更新の度にユニークにするのですね。 勉強不足でimgタグのsrc指定で?d=というのを付けられるのを知りませんでした。 早速、以下のようにしてみたのですがやはり変化なしでした。 この方法でいけそうなのですが、何か記述が誤っているのでしょうか? 以下に出力しているimgタグを載せます。 ちなにみ追加している時分秒は過去と未来にしましたが、両方ともだめでした。 <img src="../dataimage/car/aman/60_1_thum.jpg?d=20061024120259" alt="" border="0" /> | ||||
|
投稿日時: 2006-10-24 11:33
>甕星様
ちょっと大掛かりですね。クエリ文字の追加でどうにか出来そうなので、そちらで 対応したいと思います。 URLは参考になりました。 ありがとうございます。 |