私が画像を取得するために、資産コントローラでこのコードを持っている:Set-Cookieヘッダーを複数回
function images($path,$image_name)
{
$image = "../assets/images/$path/$image_name";
if (file_exists ($image) && (is_file($image))) {
$name = $image_name;
} else {
}
$file = getimagesize($image);
$filesize = filesize($image);
$time_cache = 360000000000;
$ts = gmdate("D, d M Y H:i:s", time() + $time_cache) . " GMT";
header("Content-Type: {$file['mime']}\n");
header("Content-disposition: inline; filename=\"$name\"\n");
header("Content-Length: $filesize\n");
header("Expires: $ts");
header("Pragma: cache");
header("Cache-Control: max-age=$time_cache");
readfile ($image);
}
Iはconfig/config.php file
にtrue
にCSRFの保護を設定しており、画像のためのすべての要求がSet-Cookie
で送信されますヘッダー。そのため、csrf-cookieはいくつかのページで何度も設定することができます。それは心配するものなのでしょうか?もしそうなら、これを防ぐ手段がありますか?
のように見えます
header_remove("set-cookie");
でこれを行うために管理し、そこにあれば、'、あなたは知っていますかこのようにすることで副作用はありますか? – georgesamper
あなたは他のコンポーネント(またはセッションマネージャ)によって宣言されたものであっても、すべてのクッキーを削除するので、すべてのヘッダを再宣言する必要があります..もしheaders_list、parse、redeclareのようなものを使ってこれを行うと思われるなら、私はその良い(とシンプルな)グローバルなエスケープのフラグ変数を使用すると思う...奇妙だが、速い作品... –
それは私のために働いて、セッションとcsrfが動作し、各アセットごとに新しいCookieを設定します。 – georgesamper