我的問題是我有一個網站,當我刷新頁面時,會話會被破壞。這意味著我丟失了我的購物車、我的愿望清單等...在 Safari 和 Firefox 中也會發生這種情況,但在我的 PC 上,會話仍保留在那里。這不是隱身選項卡/窗口,我不會在刷新之間刪除我的 Cookie 和/或會話數據,也不會在瀏覽器設置中指定在任何情況下刪除 Cookie(或其他數據)。我在帶有 FPM 的 nginx 下使用 Yii2(最新通過 Composer 安裝)和 PHP 7.4。php.ini 配置(會話):session.save_handler = files;session.save_path = "/var/lib/php/sessions"session.use_strict_mode = 0session.use_cookies = 1session.cookie_secure = 0session.use_only_cookies = 1session.name = PHPSESSIDsession.auto_start = 0session.cookie_lifetime = 5184000session.cookie_path = /session.cookie_domain =session.cookie_httponly = 0session.cookie_samesite = "Strict"session.serialize_handler = phpsession.gc_probability = 1/100session.gc_divisor = 1000session.gc_maxlifetime = 5184000session.referer_check =session.cache_limiter = nocachesession.cache_expire = 5184000session.use_trans_sid = 0session.sid_length = 26session.trans_sid_tags = "a=href,area=href,frame=src,form=";session.trans_sid_hosts=""session.sid_bits_per_character = 5;session.upload_progress.enabled = On;session.upload_progress.cleanup = On;session.upload_progress.prefix = "upload_progress_";session.upload_progress.name = "PHP_SESSION_UPLOAD_PROGRESS";session.upload_progress.freq = "1%";session.upload_progress.min_freq = "1";session.lazy_write = On我的 Yii2 配置(frontend/config/main.php):return [ // ... 'modules' => [ // ... 'session' => [ 'class' => 'yii\web\Session', 'timeout' => 5184000, ], //.. ], // .. 'components' => [ // .. 'session' => [ 'name' => 'advanced-frontend', ], // .. ], //..];我的測試前端中的 TestController:<?phpnamespace frontend\controllers;use Yii;use yii\web\Controller;我在 php.ini 和 Yii2 主配置中嘗試了各種配置,但沒有成功。任何想法apprised!
1 回答

幕布斯6054654
TA貢獻1876條經驗 獲得超7個贊
在詢問了幾個人并進行了大量調試之后,問題是session.cookie_samesite = "Strict"
當我將其更改為問題時,session.cookie_samesite = "None"
問題就像魔術一樣解決了。
- 1 回答
- 0 關注
- 126 瀏覽
添加回答
舉報
0/150
提交
取消