首页  >  文章  >  后端开发  >  **如何在 PHP 中为 Cookie 设置“SameSite=Strict”?**

**如何在 PHP 中为 Cookie 设置“SameSite=Strict”?**

DDD
DDD原创
2024-10-25 12:58:30759浏览

**How to Set

PHP setcookie "SameSite=Strict"?

HTTP 的新“SameSite”属性有助于防止跨站点请求伪造 (CSRF) 攻击限制哪些请求可以包含 cookie。

当前 PHP 对“SameSite”的支持

PHP 7.3 及更高版本支持使用 $options 数组创建具有“SameSite”属性的 cookie :

<code class="php">setcookie($name, $value, [
    'expires' => time() + 86400,
    'path' => '/',
    'domain' => 'domain.example',
    'secure' => true,
    'httponly' => true,
    'samesite' => 'None',
]);</code>

对于 7.3 以下的 PHP 版本:

Apache 配置:

<code class="apache">Header always edit Set-Cookie (.*) "; SameSite=Lax"</code>

Nginx配置:

<code class="nginx">location / {
    # set all cookies to secure, HttpOnly, and SameSite=Lax
    proxy_cookie_path / "/; secure; HttpOnly; SameSite=Lax";
}</code>

标头方法:

<code class="php">header("Set-Cookie: key=value; path=/; domain=example.org; HttpOnly; SameSite=Lax");</code>

setcookie 方法中的错误(在 PHP 7.3 中已弃用):

<code class="php">setcookie('cookie-name', '1', 0, '/; samesite=strict');</code>

以上是**如何在 PHP 中为 Cookie 设置“SameSite=Strict”?**的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn