thinkphp5 session 沒法寫入

若是開啓了域名部署模式,設置以下php

域名部署  
'url_domain_deploy'      => true,

'session'                => [
    'id'             => '',
     // SESSION_ID的提交變量,解決flash上傳跨域
     'var_session_id' => '',
     // SESSION 前綴
     'prefix'         => 'dolphin_admin_',
     // 驅動方式 支持redis memcache memcached
     'type'           => '',
     'domain'         => 'baidu.com',
     // 是否自動開啓 SESSION
        'auto_start'     => true,
],

設置了 SESSION 域名以後只能夠在 域名內使用 SESSION 否則將沒法保存redis

若是須要使用域名部署,本地測試的時候也須要使用虛擬域名thinkphp

這樣 SESSION 能夠在主-副域名之間共享SESSION(同一框架(項目),不一樣域名共享)跨域

————————————————————————————————————————session

Thinkphp5 如何部署不一樣模塊不一樣域名訪問, 而且共享SESSION框架

首先須要開啓:域名部署路由功能dom

config.phpmemcached

'url_domain_deploy' =>  true

route.php測試

動態註冊域名部署規則
// blog子域名綁定到blog模塊
Route::domain('blog','blog');
// 原來的URL訪問
http://www.thinkphp.cn/blog/article/read/id/5
// 綁定到blog子域名訪問
http://blog.thinkphp.cn/article/read/id/5

 這個時候SESSION還未同步url

也就是www.thinkphp.com 登陸以後,blog.thinkphp.com 沒法獲取SESSION
須要設置 SESSION 域名

'session'                => [
    'id'             => '',
     // SESSION_ID的提交變量,解決flash上傳跨域
     'var_session_id' => '',
     // SESSION 前綴
     'prefix'         => 'admin_',
     // 驅動方式 支持redis memcache memcached
     'type'           => '',
     'domain'         => 'thinkphp.com',
     // 是否自動開啓 SESSION
        'auto_start'     => true,
],

部署完成.

相關文章
相關標籤/搜索