画像が更新されない

このQ&Aのポイント
  • 画像が更新されない原因と対策について相談させてください。
  • データベースとディレクトリの更新は確認できるが、画像の反映に時間がかかる現象が発生しています。
  • キャッシュの問題かと思い、キャッシュ制御の設定を試みましたが解決しませんでした。
回答を見る
  • ベストアンサー

画像が更新されない

はじめまして。 ご相談したいことなのですが、 php5 mysql を使用してプログラムを作成しております。 そしてつまずいてしまい2日間解決できずに皆様の力をお借りできればと思います。 フォームを使用し画像を登録するシステムを作っています。 そして画像を変更するシステムを作成しているところで、画像の更新が表示上反映されないのです。 データベース・ティレクトリ内は更新されていて、ページを更新(F5)をするまで画像が反映されないのです。 キャッシュが残っているのかと思い、 <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" /> の記述をしたり 画像を入れているディレクトリに.htaccessを使い Header set Cache-Control "no-cache" Header set Pragma "no-cache" と記述しているのですがまったくダメで困っています。 単純なことかも知れませんがよろしくお願い致します。

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • level2012
  • ベストアンサー率63% (12/19)
回答No.1

どうしてもキャッシュが削除できない場合は、URLの後ろに?id=***でユニークな例えばIDを付加すると問題は回避できます。 rand()関数など。

taabooo
質問者

お礼

ありがとうござます。 出来ました。 本当にありがとうございました。

関連するQ&A

  • 画像が更新されない2

    はじめまして。 ご相談したいことなのですが、前回下記の質問をしました。 ************************************************************************** php5 mysql を使用してプログラムを作成しております。 そしてつまずいてしまい2日間解決できずに皆様の力をお借りできればと思います。 フォームを使用し画像を登録するシステムを作っています。 そして画像を変更するシステムを作成しているところで、画像の更新が表示上反映されないのです。 データベース・ティレクトリ内は更新されていて、ページを更新(F5)をするまで画像が反映されないのです。 キャッシュが残っているのかと思い、 <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" /> の記述をしたり 画像を入れているディレクトリに.htaccessを使い Header set Cache-Control "no-cache" Header set Pragma "no-cache" と記述しているのですがまったくダメで困っています。 単純なことかも知れませんがよろしくお願い致します。 ************************************************************************ 上記の質問でURLの後ろにrand関数で?id=***などをつけるとページが更新されるとご回答頂きまして、試したところそのときは無事出来たのですが、また何度かやっているうちに画像が更新されないようになっています。 何か問題があるのでしょうか? 使用しているブラウザの問題なのでしょうか? 何度も同じ質問になってしまい申しわけございませんがよろしくお願い致します。

    • ベストアンサー
    • PHP
  • HTMLの画像自動更新について

    現在、 <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やスクリプトは使いたくないのですが、使わなくてはいけないのであれば、教えてください。 お願いします。

    • ベストアンサー
    • HTML
  • MACのsafariでCGIを動作した場合、リロードボタンを押さないと更新されません。教えて下さい。

    MACのsafariでCGIを動作した場合、リロードボタンを押さないと更新されません。教えて下さい。 今perlを使ってスケジュール管理を作っていますが、IEでは、ちゃんと動作します。HTMLに <HEAD> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> </HEAD> と記述し、キャッシュを無効にしてみたのですが、 どうしてもsafariだと新規でスケジュールを入力したものがカレンダーに反映されません。 これは、HTML記述では、キャッシュを無効に できないのでしょうか? 教えて下さい。

    • ベストアンサー
    • Perl
  • 3日に1回リロードさせたい

    ページの情報を更新したときに、ブラウザのキャッシュの影響でページが更新されないことがあります。 cssが読み込まれていなかったり、htmlの変更が反映されていなかったり、 そのときはF5でリロードさせることで更新を反映させています。 ユーザーが自分でリロードを実行することなく、 自動的に更新させる方法を探しました。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="-1"> この方法だとキャッシュを削除することができ、 複数のブラウザにも対応できるそうですが、 キャッシュを毎回削除してしまうと ページを開く度に重くなってしまいます。 3日に1回、更新させる、ということはできませんか? <meta http-equiv="expires" content="Sat, 15 Nov 2012 12:00:00 GMT"> を <meta http-equiv="expires" content="Sat, 18 Nov 2012 12:00:00 GMT"> <meta http-equiv="expires" content="Sat, 21 Nov 2012 12:00:00 GMT"> のように3日ごとに更新するしかないのでしょうか。

  • 画像をキャッシュさせたくない

    CGIで動的に画像を表示するため表示した画像をキャッシュさせたくないのですが、どうすればいいのでしょうか。 他のページなどを参考に <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> をヘッダーに入れてみましたし、リダイレクトしたURLの後ろに無意味なランダム数字を入れても見ましたが、やはりキャッシュされています。 たとえキャッシュされていても無視して読み込むようなヘッダーとか何か確実に新たに読み込む方法はないでしょうか。

    • ベストアンサー
    • HTML
  • .htaccessでサーバエラー

    今までは.htaccessに <Files ~ "\.(pdf|html)$"> Header set Pragma no-cache Header set Cache-Control no-cache </Files> 上記の記述をして運用していたのですが、レンタルサーバを契約更新して 新しいサーバに移動してからサーバエラーがでてしまい、HPが閲覧不可となります。 この記述を外すと正常に動作します。 しょうがないのでHTML単位で制御しようと <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="expires" content="0"> 上記をheadに記述していますが、効果なくキャッシュされてしまいます。 どうにか.htaccessを使う様にできますか?これはサーバ側の仕様でしょうか・・・ サーバはOCNのBizメール&ウェブ ビジネス のホスティングサービスを利用しています。 レンタルサーバ契約時のhtaccess初期記述内容 Options -Indexes SetEnv TZ JST-9

    • ベストアンサー
    • CGI
  • ブラウザの自動更新について

    ブラウザの自動更新について質問させていただきます。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="以前の時間"> 古いキャッシュを読まずにブラウザに新しいページを読みたい時、上のブラウザごとに異なる?3種類の対応方法があるかと思いますが、これらは適切な方法でしょうか。 例えばyahooのトップページは上の方法を使わずに自動更新しているようですが、上記のmetaは埋め込まれていませんでした。また他の多くのポータルサイトもそうでした。どのように自動更新しているのでしょうか。 どのようにすれば、更新ボタンを押さずに更新できるのか、また自動更新の際、上記のmetaを使ったほうがいいのか、それともyahooのように別の方法を使ったほうがいいのか、教えていただけないでしょうか。 初心者の質問で、質問内容が乱れてしまいましたが、どうぞよろしくお願いいたします。

  • 緊急!!広告バナーとキャッシュサーバーの関係

    とても今困っています。 HTML(smarty使用)であるページを作成しています。 ヘッダー部にJavaScriptで新しい広告バナーを貼り付けたのですが、 キャッシュサーバーの関係で、反映されず、以前の広告バナーが出てしまいます。 Ctrl+F5などのページ更新をすれば新しい広告バナーに変わるのですが・・・・・・。 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="1"> などもhead部に入れてみましたが、駄目でした。 サーバーの設定ファイルを変更するしかありませんか? 出来れば、他の画像・動画もある為に、あまりキャッシュ機能は外したくありません。 よろしくお願いします。

  • IEでブラウザにキャッシュをさせないようにするには?

    更新頻度の多いホームページを公開したいのですが、IEだとブラウザがキャッシュをしてしまって、常に最新の情報を表示させることができません。 <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> <META EQUIV="Expires" CONTENT="-1"> これをやっても効かないのです。。 IEのホームページを見ると、IEではこのタグは無視されます、と書いてありました。。 YAHOO!などのポータルサイトは更新されるわけですから、方法はあるのだと 思うのですが、具体的にはどういった方法があるのでしょうか?

  • キャッシュ(?)の消去について。

    <?php //$aはurlの配列です。 foreach($a as $v){ $imgNum = str_pad($count, 5, '0', STR_PAD_LEFT); $imgURL = "img/$imgNum.jpg"; if ( false == @file($imgURL) ){ printf("<a href=\"%s\"><img src=\"img/none.jpg\" /></a>\n", chop($v, "\n")); } else { printf("<a href=\"%s\"><img src=\"$imgURL\" /></a></li>\n", chop($v, "\n")); } //以下のようなものを含めたり。 $imgURL = NULL; @unlink($imgURL); clearstatcache(); } /* php header("pragma: no-cache"); header("cache-control: no-cache"); header("expires: 0"); html <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> .htaccess <Files ~ "\.(html|php|jpe?g|gif|png)$"> Header set Pragma no-cache Header set Cache-Control no-cache </Files> 上記3つも含めていますが、イメージの出力にあたるif文で分岐してくれません。 あきらかにfile関数に対応するjpgはないのですが。 ブラウザにキャッシュは記憶しないよう設定しています。 色々考えましたが、停止してしまいました。 ご回答お待ちしております。 */

    • 締切済み
    • PHP

専門家に質問してみよう