• 締切済み

キャッシュの問題?

半年ほど前に某サイトである区分をHTMLに追加したところ、区分の追加前のHTMLが読み込まれる事象がクライアント側で発生しています。 区分の追加前のHTMLではその後の画面遷移が出来ないため、問い合わせが来てしまいます。 考えられることとしては古いキャッシュが残っていたために、最新のページが表示されなかったと思ったのですが、区分追加後に最新のページが表示されたことがあるのに、ある日使うといきなり古いページが表示されているようです。 特定のOS・ブラウザだけで発生している事象ではなく、また再現ができないため、対処に困っています・・・。 HTML上にページのローカルキャッシュを防ぐ方法もあるようですが、そうするとWEBサーバのアクセスが急増し、レスポンス悪化を招いてしまう恐れがあるため避けたいところです。 考えられる原因、またその対処法として何かありますでしょうか?よろしくお願いします。

みんなの回答

  • yamma
  • ベストアンサー率27% (29/107)
回答No.2

クライアントが企業であると想定すると、時々あるのがゲートウェイでキャッシュしてしまっているパターンです。末端のPCにキャッシュされているわけではないので、キャッシュの削除をしても変わらないことがあります。 IEならctrl+F5、ネスケならshift+F5で更新されるか確認してみてください。 変化がないのであれば、負荷の問題があるにしても、問題の切り分けのために一度、そのページだけノーキャッシュで指定してみるのも手だとは思いますが。 該当ページがフレームを使っているならフレームなし版を作ってみるのも手かと。 具体的な解決案でなくてごめんなさい。

  • kuma-ku
  • ベストアンサー率54% (1558/2845)
回答No.1

こんばんは 専門外なので、自信は無いです。 HTML のMETA タグ内に、以下の文字列を埋め込んでみてはいかがでしょうか? <meta http-equiv="Last-Modified" content="Tue, 14 Dec 2004 15:30:00 GMT">

参考URL:
http://www.atmarkit.co.jp/fjava/rensai2/webopt12/webopt12.html

関連するQ&A

  • キャッシュの問題?

    半年ほど前に某サイトのログインページにある区分をHTMLに追加したところ、区分の追加前のHTMLが読み込まれる事象がクライアント側(企業・一般家庭共に)で発生しています。追加した区分によって、表示する画面が異なるため、区分追加前のHTMLではその後の画面遷移が出来ません。 【追加した文(略)】 <input type="hidden" name="aaaaa" value="01"> 考えられることとしては古いキャッシュが残っていたために、最新のページが表示されなかったと思ったのですが、区分追加後に最新のページが表示されたことがあるのに、ある日使うといきなり古いページが表示されているようです。特定のOS・ブラウザだけで発生している事象ではなく、また再現ができないため、対処に困っています・・・。 HTML上にページのローカルキャッシュを防ぐ方法もあるようですが、そうするとWEBサーバのアクセスが急増し、レスポンス悪化を招いてしまう恐れがあるため避けたいところです。 考えられる原因、またその対処法として何かありますでしょうか?よろしくお願いします。

  • キャッシュをなくす

    静的HTMLから動的HTMLに遷移する際に、よくキャッシュされた情報が表示されます。 その回避方法はございますでしょうか? 1つの案としてURLにランダムパラメータを付加してあげる。 注)クライアントキャッシュではございません。

  • Jqueryのキャッシュについて

    JqueryからCGIを呼び出して、DBと接続し、その戻り値をHTMLページに反映しています。 処理をして、ブラウザを再起動すると処理されたデータで表示されるのですが、ブラウザを再起動しないと、処理する前のデータが表示されます。ページをリロードしても同じです。 下記のようにCGIを呼び出してDBと接続をしているのですが、 キャッシュがあると良くないと言うことが書いてあったので、 cache: false, を追加したり、 $.ajax({ type: 'GET', url: '~.cgi', cache: false, //←追加 data: ''', success: function(result){ if (result != ''){ 処理をする } } $.ajaxSetup({ cache: false }); ↑を追加してみたりしたのですが、これらの部分からあとのプログラムが動きません。 (エラーになっている?ような感じです) これらを削除してプログラムを動かすと、キャッシュが残っているような結果が帰ってきます。 要するに、DBの値を修正、削除をして、その後のデータを表示したいのですが、 削除後、修正後のデータが表示されません。 ブラウザを再起動すると、修正、削除されている状態で表示されます。 ブラウザを再起動しなくても処理をした後の結果がHTMLページに表示されるようにしたいです。 わかりにくい説明で申し訳ございませんが、ご不明な点はお聞き下さい。 どなたかおわかりになる方がいらっしゃいましたら教えて下さい。 よろしくお願いいたします。

    • ベストアンサー
    • AJAX
  • キャッシュの問題?

    少し前から、IE5でブラウズした後、オフラインにすると 「戻る」を用いても、「履歴」をクリックしても、 前に表示したページが表示できなくなってしまいました。 お気に入りのオフラインでも使えるようにチェックを いれてあるページも、その多くがオンラインでないと 表示されません。 また、オンラインでも、前に表示したページに戻ると また新たにダウンロードしているようで時間がかかります。キャッシュが機能していないということでしょうか。 どこをいじくると元のようにできるのでしょうか。

  • Googleのキャッシュ

    Googleで検索をかけた時、よく「キャッシュ」を利用していたのですが、数日前から利用できなくなりました。「キャッシュ」をクリックしても「ページが表示できません」と出ます(全てのサイトに関してです)。 Yahooでは今まで通り「キャッシュ」が利用できます。 どのように対処すればよいか、教えて頂ければと思います。

  • IE以外のブラウザでキャッシュを無効にする方法

    どうもこんにちは。今サーブレットで学習塾の生徒名簿管理のプログラムを模擬で作っているんですが、キャッシュの処理で困っています・・。 JSPのファイルには Calendar objCal1=Calendar.getInstance(); Calendar objCal2=Calendar.getInstance(); objCal2.set(1970,0,1,0,0,0); response.setDateHeader("Last-Modified",objCal1.getTime().getTime()); response.setDateHeader("Expires",objCal2.getTime().getTime()); response.setHeader("progma","no-cache"); response.addHeader("Cache-Control","no-store"); response.setHeader("Cache-Control","no-cache"); という記述をしています。HTMLのMETAタグにも <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> という記述をしています。これでIE(Internet Explprer)ではきちんと有効になって、たとえばログイン認証を必要とするページからログアウトした後、ブラウザの戻るボタンで戻っても前のページは表示できないようになります。 ばんざ~~~いと思ってたら・・・、それ以外のブラウザ、たとえばFireFox(2.0)、Netscape(7.1)、Opera(9.0)などでは表示されてしまいます・・・。何かこれらのブラウザでも有効にできる対策はあるのでしょうか。いろいろ調べてみたけど見つかりません。どなたかご教授をお願いいたします!

    • ベストアンサー
    • Java
  • Firefoxのキャッシュ

    FireFoxではブラウズした素材をどこにキャッシュしてどんな形式で保存しているのでしょうか。 I/Eではurlとファイル形式込みで記録されているので、履歴と組み合わせて自分のPCに取り込んだ画像や素材を簡単に使えますが、私の使っていたFirefoxでは過去に訪問したサイトのタイトル画像などを、その名前で呼び出すことができませんでした。現行の最新版でも履歴からHTMLで呼び出して該当ページの再現をしないと特定画像を保存できないのでしょうか。 PCのHDDがクラッシュして、自分の作ったサイトの画像をFTPなどで一括DLできなくなり、URLに飛んで読み込みしてキャッシュから新PCに移転させたいのです。でもファイルネームのままでキャッシュされないFirefoxという認識なのですが、キヤッシュフォルダから呼び出す方法があれば教えてください

  • キャッシュの制御

    HTMLページにアクセスした際に、ローカルにキャッシュを作成しないよう制御したいのです。 Webで色々と調べて、 <HEAD>~</HEAD>の間に <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="Thu, 01 Dec 1994 16:00:00 GMT"> を追加しましたが、ページ表示時にIEのTempフォルダ 「C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files」 にファイルが作成されます。 実際に実現したいことというのが、 1.通常OWS(OracleWebServer)でシステム動作 ↓ 2.データメンテナンス時にOWS停止 ↓ 3.IISを起動し、データメンテナンス中である旨、ページを表示 ↓ 4.データメンテナンス完了後、IIS停止、OWS起動 ↓ 5.通常のシステム画面を表示 を実現したいのですが、3の時点でキャッシュ無効のHTMLページを表示してもキャッシュが作成され、4→5の時にメンテナンス中の画面が表示されたままになり、リロードしても回避されない(キャッシュを消さないと通常のシステム画面が表示されない)状態なのです。 環境は OS:WindowsNT Server 4.0 OWS:Oracle WebServer2.1 IIS:InternetInformationServer4.0 です。 マニアックな質問で申し訳ないのですが、ご回答頂けますよう宜しくお願い致します。

  • session_cache_limiterの使い方

    警告 ページの有効期間切れと表示される場合は session_cache_limiter('private'); という1文を追加すればいいとあったので、ソースの1番上に追加しました。 それで、あるページでセッション変数を定義して、別のページではそのセッション変数があるかないかで何か処理を動かすということをやりたいのですが、セッション変数が無い状態でキャッシュされている(キャッシュの使い方が違っていたらすみません)ようで、その処理を動かすためには1回更新をかけないといけません。この場合はどのようにしたらいいのでしょうか?

    • 締切済み
    • PHP
  • 更新ページでなくキャッシュを表示する

    先日、ハードを初期化してOS(WINDOWS)を再インストールしました。 一緒にIEの6.0も再インストールしたのですが、ネットにつないでリンク先にアクセスすると最新の更新でなく前回アクセスのキャッシュを表示します。更新のアイコンを押せば最新ページを表示しますがいろんなページにアクセスする度に更新のアイコンをいちいち押さねばなりません。 初期化前はこんなことなかったのですが、どこの設定を直せばリンク後すぐに最新ページを呼びにいくでしょうか。