PHPでの質問です。


勘違いしていると思うので確認の意味を込めて質問します。

header("http-equiv: cache-control");
header("http-equiv: no-cache");

上記の2つを入れても意味はありますか?
要はキャッシュさせないようにしたいだけなんですが
ヘッダーで下記の3つを入れる場合にどのようにすればよいのか教えてください。
そもそもmetaタグなのでヘッダーに入れる意味はないという事でしたら
それでも構わないのでアドバイスいただければと思います。

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/07/17 09:52:05
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:vector_xenon No.1

回答回数113ベストアンサー獲得回数4

ポイント35pt

header()の中身が違います

header("http-equiv: cache-control");
header("http-equiv: no-cache");

header("cache-control: no-cache");

となります


したがって、

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">

header("pragma: no-cache");
header("cache-control: no-cache");
header("expires: 0");

となります。

METAタグで対応できるものをわざわざheader()で出力することもないかと思いますが、より確実にといったニュアンスになるかと思います。


http://jp.php.net/header

id:quocard

ありがとうございます。

私の中が深く考えすぎて変な方向にいっていたようです。

とても参考になりました。

2007/07/12 21:01:07
id:kn1967 No.2

回答回数2915ベストアンサー獲得回数301

ポイント35pt

PHP: header - Manual

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' );

header( 'Cache-Control: post-check=0, pre-check=0', false );

header( 'Pragma: no-cache' );

有効期限を実質ゼロにするための日付と最終変更時刻を入れておく。

HTTP/1.1仕様としてCache-ControlをHTTP/1.0仕様としてPragmaを入れておく。


恥ずかしながら

  header("http-equiv: cache-control");

  header("http-equiv: no-cache");

という表記は知らないのですが、何を参考になさったのでしょうかお教えいただければ幸いです。

id:quocard

ありがとうございます。

とても参考になりました。

質問中にある

header("http-equiv: cache-control");

これは単にHTMLのMETAタグの中身を入れてみただけで似たような効果が得られると思ってしまい

書いたモノです。

そもそもの意味を取り違えている部分があり

恥ずかし限りですが参考にさせていただきたいと思います。

2007/07/12 21:02:38

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません