アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在、
<meta http-equiv="Refresh" content="5">で自動更新をしているのですが、
毎回同じ画像が表示されてしまいます。
F5を押すと画像は更新されます。
キャッシュに問題があるのではと調べて下記のように書きました。

<HTML>
<HEAD>
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Pragma" content="no-cache">
<meta equiv="Expires" content="-1">
<meta http-equiv="Refresh" content="5;URL=index_i_i.html">

URLの「index_i_i.html」は同じHTMLファイル(名前は変えて)を用意して交互に飛ぶように設定しました。

ですが、上記の記述でも同じ画像が表示されます。

F5では更新されるのですが、F5と同じ更新をHTML内に記述するにはどうしたらよろしいのでしょうか?
できれば、CGIやスクリプトは使いたくないのですが、使わなくてはいけないのであれば、教えてください。

お願いします。

A 回答 (3件)

これ、HTMLだけでは難しいようです。



no-cacheを指定すると、HTML自体はキャッシュされずに毎度新しく読み直します。
ですがそこからリンクされている画像・CSS・JavaScriptなどはキャッシュされてしまうので、せっかく新しいHTMLを取ってきても画像は前のまま表示されるという現象になるようです。

回避策は .htaccess に画像もキャッシュしないよう記述することです。
記述としてはこんな感じでしょうか。

<FilesMatch ".(gif|jpg|png)$">
Header unset Cache-Control
</FilesMatch>

参考:ウェブサイトのパフォーマンス改善やセキュリティに役立つ.htaccessの設定 | コリス
http://coliss.com/articles/build-websites/operat …


あと、JavaScriptを使ってよければ、画像ファイルを可変パラメータつきで呼び出すなんて手もあります。
    • good
    • 0
この回答へのお礼

HTML範囲ではできないみたいですね。
ありがとうございました。

お礼日時:2011/03/31 09:25

初めまして



表示する度に(ブラウザの更新ボタン含む)表示される画像を変更する方法は
PHPやCSSやjavascriptなどいくつか方法があります。

一番簡単な方法はjavascriptでの記述だと思います。

求めていた方法ではないかもしれませんが参考にして下さい。

参考URL:http://e-html.aofp.net/java_info/j_sample.html
    • good
    • 0
この回答へのお礼

やっぱりそっちになってしまうのですね。
そちらの知識がないため、サンプルを見ても理解できませんでした。
勉強したいと思います。
ありがとうございました。

お礼日時:2011/03/31 09:27

.htaccessに画像のキャッシュをしないよう指示するか・・それでもIEは設定によっては無視してキャッシュするけど・・


 HTMLを読み込ませるたびに、HTMLを書き直すという手法もある。abc.jpg→def.jpg→・・・たとえば、現在時刻の時計の画像とかに使ったことがあります。
    • good
    • 0
この回答へのお礼

HTMLを書きなおす事が出来る方法を勉強したいと思います。
ありがとうございました。

お礼日時:2011/03/31 09:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!