CSVファイルをブラウザのキャッシュに残さない方法

このQ&Aのポイント
  • CSVファイルをブラウザのキャッシュに残さない方法について調査しています。
  • 現在はURLにランダムなパラメータをつける方法でキャッシュを回避していますが、もっとスマートな方法があれば教えてください。
  • プログラミングには不慣れですが、簡単に実装できる方法をお教えいただけると助かります。
回答を見る
  • ベストアンサー

CSVファイルをブラウザのキャッシュに残さない方法

とある調査ページをPHPでつくっています。 結果データをCSVに書き出し、ページにCSVへのリンクを張ってダウンロード出来るようにしていますが、ブラウザにキャッシュが残ってしまうので、連続して調査をするとCSVをダウンロードしても以前のCSVがダウンロードされてしまいます。 現在は苦肉の策としてURLにランダムなパラメータをつけて回避しています。 http://hoge.com/hoge.csv?1 http://hoge.com/hoge.csv?2 http://hoge.com/hoge.csv?3 等々 もっとスマートにキャッシュを残さない方法は有りますか? ブラウザの設定を…というのは無しでお願いします。 ちなみに、当方プログラマーではないためあまり難しいプログラムは出来ません…。 その点を加味してお答え頂ければ幸いです。

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

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

  • ベストアンサー
  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.1

.htaccess が使えるサーバーなら、以下の記事で、拡張子指定のところを.csvにすればできる。 http://blog.look-ss.jp/article.php/2008092600255048

関連するQ&A

  • PHPで動的に生成されるCSVをサーバーに保存

    業務処理を自動化するためにPHPで動的に生成されるCSVファイルを、WEBサーバーに保存したいと思っています。 wgetコマンドを使って保存しようと思っていますが、リンクにGETパラメータ?(http://hogehoge.com/hoge.php?hoge=1&hoge=2)が設定されているためかcsvが生成さずPHPページ(hoge.php)が保存されてしまいます。 実行したwgetコマンド /usr/local/bin/wget /home/useraccount/www/hoghog/hog.csv 'http://hogehoge.com/hoge.php?hoge=1&hoge=2' -O - また、phpファイルを生成し、 <?php $file = 'http://hogehoge.com/hoge.php?hoge=1&hoge=2'; $newfile = 'test.csv'; if (!copy($file, $newfile)) { echo "failed to copy $file...\n"; } ?> と上記のようにやっても同じ結果でした。 ブラウザ上のURLバーでhttp://hogehoge.com/hoge.php?hoge=1&hoge=2とするとCSVファイルの保存画面が出てくるページなのですが、何か良い方法はありませんでしょうか。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • キャッシュをなくす

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

  • csvファイルのダウンロード方法。

    csvファイルをアップロードして、HTMLからリンクをはっています。 <A HREF="***.csv">ダウンロード</A> これで、私のPCでは正常に、ダウンロードができるのですが、 (ダイアログボックスが出て、ファイル保存箇所もきいてくる。) もうひとつのPCでは、ブラウザに表示されてしまうのです。 このPCの違いといったら、OSが違うことくらいしか思い当たりません。 (できる方はwin2000・できないほうはwinXP) この回避方法を教えてください。 よろしくお願いします。

  • CSVファイルのダウンロード方法について

    CSVファイルのダウンロード方法についてご教授願います。 (いろんなサイトやFAQをみてきましたが、いまいちわからなかったのでここで質問させていただきます。) 現在、 (1)アンケート項目データ採取.cgi(集計プログラミング込み)…ブラウザ上表示はではcgiにhtmlテンプレートを読み込み ↓ (2)集計.CSVにてデータ集計 ↓ (3)検索.cgiにて(2)集計.CSVのソートや詳細の検索ができる ---------- 他、(4)修正phpがあり、(2)集計.cgiを集計できます。 ---------- (1)、(3)、(4)各ページで<a href="***/***/集計.csv">_CSVダウンロード_</a>なるものをリンク表記したのですが、ダウンロードできません。 どうしたらよいでしょうか?

    • 締切済み
    • CGI
  • CSVファイルの内容がブラウザ表示されてしまうのを回避したい

    CSVファイルのダウンロードを行いたいのですが、 ファイルダウンロードのダイアログが表示されず、 CSVファイルのデータが、ブラウザ上に直接、表示されてしまいます。 その際、ブラウザ上にはEXCELが起動されるわけではありません。 ブラウザ上にファイルの内容が直接表示されてしまう現象を 回避する方法を教えてください。 また、改善策がございましたら、ご教授お願いします。 拡張子での差異は無く、TEXT(.txt)ファイルでも同様の現象が再現されます。 上記の現象が発生する端末のWindows、IEのバージョンは、下記のとおりとなります。 ・WindowsXP Professional Version 5.1 (Build 2600.xpsp_sp2_gdr.090804-1412 : Service Pack 2) ・Internet Explorer (Version: 6.0.2900.2180.xpsp_sp2_gdr.090804-1412) ご助言、宜しくお願いします。

  • CSVファイルのダウンロードについて

    現在開発しているシステムでCSVファイルをダウンロードしたいのですがうまくいきません。どなたか問題の解決できる方お願いします。 現在、CGIでCSVファイルを作成しておきそれをファイルのリンクからダウンロードさせようとしています。 そこで問題になっているのがIEのバージョンが6以前なら普通にダウンロードが出来るのですが、バージョン6だとEXSELがブラウザ内で立ち上がります。 これの回避方法(まずダウンロードをしたいです。)はありませんか? 現在ファイルのヘッダーはこのようにしています。 print "Content-type: application/octet-stream\n" ."Content-Disposition: attachment; filename=aaa.csv\n\n" あと、このCGIプログラムをネスケ、mozillaで開くとソースがブラウザに表示されてしまいます。IEでは問題なく表示されるのにネスケとmozillaはどうしてこんなことが起きるのでしょうか? 少しわかりずらい文章になってしまって申し訳ありません。 どなたかお力を貸してください。お願いします。

    • 締切済み
    • CGI
  • パラメーターでのブラウザのキャッシュクリアについて

    ブラウザでユーザーに最新の更新状況を見てもらうために、ユーザー自身がブラウザのキャッシュクリアをせずともパラメーターを画像やcssにつけたらキャッシュクリアできるとのことですが、 画像やcssはこの方法で行うとして、文章内容を変更してアップした場合にも、同じページ内の画像などにパラメーターをつけたらば、そのキャッシュクリアされて、恩恵を受けて同一ページ内の更新したい文章箇所も新しい状態で表示されるのでしょうか? 例 更新前の文章  今日は暖かいですね 更新前の画像  <img src="test.jpg"> パラメーターを追加 <img src="img src="test.jpg?20210415"> 文章変更   今日は寒いですね ↓ サーバーへアップするとユーザーがブラウザのキャッシュクリアしなくても、 文章  今日は寒いですね となりますでしょうか? 詳しくないので教えていただけたらありがたいです。 よろしくお願いします。 下記パラメーターについての参照サイトです。 https://kds-info.jp/blog/%E3%80%8C%E3%81%82%E3%80%81%E3%81%9D%E3%82%8C%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E3%81%A7%E3%81%99%E3%81%AD%E3%80%82%E3%80%8D%E3%81%A8%E3%81%AF%E3%82%82%E3%81%86%E3%82%AA%E3%82%B5%E3%83%A9/

    • ベストアンサー
    • CSS
  • RubyでCSVファイルの1行目を削除したい 

    Rubyの初心者でSeleniumを使ってスクレイピングを趣味としてしているものです。 ブラウザはchromeです。 この間、例外が上がったときに一定回数リトライする方法をご伝授頂きました。 http://okwave.jp/qa/q8722965.html そしてそれを活用して、CSVにスクレイピングをしたいURLを1列目に並べ、複数のページをスクレイピングしているのですが、 def try(n=10) require 'pp' require 'csv' require 'selenium-webdriver' require 'open-uri' hoge_path = File.expand_path('../hoge.csv',__FILE__) driver = Selenium::WebDriver.for :chrome #chrome のdriverを設定 CSV.foreach(hoge_path) do |row| driver.navigate.to row[1] #URL移動 #ページの移動など driver.quit #ブラウザ終了 driver = Selenium::WebDriver.for :chrome #chrome のdriverを設定 end rescue => e if n==0 raise e driver.quit #ブラウザ終了 else driver.quit #ブラウザ終了 try(n-1) end end try よく仕組みを理解できていないのですが、CSV.foreach内はループされます。 そして、404エラーなどで落ちるとまた一行目に戻ってスクレイピングが行われ、非常に困っています。 そこで、CSVファイルの1行目をループするまたは例外のリトライの際に削除していけば良いと考えたのですが、一行目を削除するというコードをどう書けばいいのか分かりません。 どうかご伝授お願いします。

    • ベストアンサー
    • Ruby
  • 使えるブラウザ

    ここに載っているブラウザ以外でwindows10でも使えそうなブラウザがあればダウンロードページを教えてください。遅くてもかまいません。異常がなければいいのでたくさん教えてください。http://freesoft-100.com/pasokon/browser.html

  • キャッシュの有効性チェックについて

    C♯環境です。 ASP.NETでの開発をしています。 キャッシュの有効性チェックをつけたいのですが、参考ページが理解 できないため、アドバイスいただけないでしょうか。 http://msdn.microsoft.com/ja-jp/library/a5e5hdyz.aspx チェックをつけたいページは、たとえば100件のデータを5件ずつ ページングして出すようなページでして、パラメタとして?pageを持ちます。 たとえば、http://www.test.com/?page=1、http://www.test.com/?page=2… といった具合です(Default.aspxの想定) 上記参考ページを見るに、まずパラメタ値を取って string reqP = context.Request.QueryString["page"]; ここに値があったらValidにしたらいいのかなと思ったんですが if (reqP==String.Empty) { status = HttpValidationStatus.Invalid; } else { status = HttpValidationStatus.Valid; } ※statusはHttpValidationStatusです。 上記のように組んでみたところ、page=2になっても page=3になってもページが切り替わらず、常に1ページめが 表示されるようになってしまいました。 修正点を御指導いただけないでしょうか。 宜しくお願いします。