使用PHP 設定「SameSite=Strict」Cookie
「SameSite」屬性透過限制第三方對Cookie 的存取來增強Cookie性- 政黨背景。 2016 年 4 月,該功能在 Chrome 51 和 Opera 39 中引入。
PHP 7.3 以上
對於PHP 7.3 及更高版本,您可以直接設定「在setcookie() 函數中使用$options 陣列的SameSite" 屬性:
<code class="php">setcookie($name, $value, [ 'expires' => time() + 86400, 'path' => '/', 'domain' => 'domain.example', 'secure' => true, 'httponly' => true, 'samesite' => 'None', ]);</code>
「samesite」元素的值應為「None」、「Lax」或「Strict」。
低於7.3 的PHP 版本
如果您使用低於7.3 的PHP 版本,可以採用以下解決方法:
1 . Apache 設定修改
將此新增至您的Apache 設定中:
Header always edit Set-Cookie (.*) "; SameSite=Lax"
2. Nginx 設定修改
2. Nginx 設定修改
location / { # your usual config ... # hack, set all cookies to secure, httponly and samesite (strict or lax) proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict"; }
將其包含在您的Nginx 配置中:
3.標頭方法<code class="php">header("Set-Cookie: key=value; path=/; domain=example.org; HttpOnly; SameSite=Lax");</code>
使用標頭方法設定cookie:
使用標頭方法設定cookie:
<code class="php">setcookie('cookie-name', '1', 0, '/; samesite=strict');</code>
使用標頭方法設定cookie:
4. setcookie() 方法中的錯誤請謹慎使用此方法,因為它已在PHP 7.3 中解決:請記住根據您的程式碼庫和要求使用適當的解決方法.以上是如何在 PHP 中設定「SameSite=Strict」Cookie:不同版本指南?的詳細內容。更多資訊請關注PHP中文網其他相關文章!