質問 > フロント機能 > ブラウザにキャッシュさせないようにするには |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
honki |
投稿日時: 2012/1/10 12:46
対応状況: −−−
|
半人前 登録日: 2011/10/11 居住地: 投稿: 13 |
ブラウザにキャッシュさせないようにするには お世話になっております。
掲題の件になりますが、 ブラウザにキャッシュさせないようにするにはどのようにしたら宜しいでしょうか。 以下の環境のみ、phpファイルが読み込まれず画面の表示がされてしまいます。(キャッシュから読み込まれている?) ブラウザ : PC(safari) & smartPhone実機 上記以外の環境の場合は、 phpファイルが読み込まれ、ページの生成が行なわれます。 また、firefoxのFireMobileSimulatorでスマホ(iphone3G)で試した場合も、phpファイルが読み込まれ、ページの生成が行なわれます。 読み込まれるphpファイルの上部に以下の記述をしております。 header('Etag: ' . date("YmdHis")); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); また、読み込まれるtplファイルには以下の記述をしております。 <iframe style="height:0px;width:0px;visibility:hidden" src="about :blank"> this frame prevents back forward cache </iframe> ?A画面→?B画面(ブラウザバック)→?A画面というように画面遷移した場合のみ、?のA画面表示時にエラーページに遷移するようにしております。 しかし、上記環境で試した場合にエラーページに遷移しません。 (ブラウザ : PC(safari) & smartPhone実機) どのようにしたらいいのか、ご指摘頂ければ幸いです。 宜しくお願い致します。 |
nkta |
投稿日時: 2012/1/10 21:01
対応状況: −−−
|
長老 登録日: 2011/5/20 居住地: 東京 投稿: 166 |
Re: ブラウザにキャッシュさせないようにするには ブラウザにキャッシュが残ってるケースもありますが、
smartyのキャッシュが残ってることもあります。 data/Smarty/templates_c 以下のファイルを一度全部消してみてから ページにアクセスしてみてはいかがでしょうか。 【追記】 すみません、↑は全然見当違いの回答でした… まず http://xoops.ec-cube.net/modules/tinyd0/index.php?id=8 をご参照いただき、 必要な情報を提示していただきたいと思います。 また、honkiさんがおっしゃる「A画面」「B画面」というのは、具体的に どのページを指しているのか、そのページのカスタマイズの有無などを教えていただきたいです。 |
honki |
投稿日時: 2012/1/11 11:15
対応状況: −−−
|
半人前 登録日: 2011/10/11 居住地: 投稿: 13 |
Re: ブラウザにキャッシュさせないようにするには ntka様
ご返信ありがとうございます。 必要な情報が下記になります。 [EC-CUBE] 2.11.2 [レンタルサーバ] 特になし [OS] Windows7 Pro [PHP] PHP 5.2.17 [データベース] MySQL 5.1.57-community [WEBサーバ] WebMatrix IIS Express [ブラウザ] Safari 5.1.2(7534.52.7) [現象] 決済モジュールを使用して、カスタマイズしております。 決済申込画面(A画面)→決済ベンダ画面(B画面) ブラウザの戻る→決済申込画面(A画面) とした場合に、エラー画面に遷移させたいと考えています。 ページのカスタマイズは特に行なっておりません(tplファイル) phpファイルにキャッシュに残らないように等の処理は入れております。 SafariとSmartPhoneの実機でのみ、Webページのキャッシュを読み込んでいるようで、決済モジュールのphpファイルが読み込まれません。 決済申込画面に2重送信防止用にjavaScriptが組まれており、SafariとSmartPhoneの実機の場合には、ブラウザの戻るを押下した後に、決済申込画面のボタンを押下しても、2重送信防止のアラートが表示されてしまい、動作しません。 SafariとSmartPhoneの実機でも、キャッシュから読み込まず決済モジュールのphpファイルが読み込ませたいです。 以上が詳細になります。 宜しくお願い致します。 |
AMUAMU |
投稿日時: 2012/1/11 18:33
対応状況: −−−
|
神 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: ブラウザにキャッシュさせないようにするには 決済モジュールはどこのものでしょう?
|
honki |
投稿日時: 2012/1/11 19:01
対応状況: 解決済
|
半人前 登録日: 2011/10/11 居住地: 投稿: 13 |
Re: ブラウザにキャッシュさせないようにするには AMUAMU様
ご返信ありがとうございます。 こちらの問題に関してですが、 本日対応が終了致しましたので解決済みとさせて頂きます。 対応内容としては、 tplファイルにonload時とunonload時のイベント処理を行なう事でPC(Safari)とSmartPhoneの実機の際にブラウザバックしてもキャッシュしたページを読み込まずに、モジュールのphpファイルを読むようになりました。 色々とご迷惑お掛けし、申し訳ありませんでした。 ありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |