如何設置session互通?
如果兩個站點頂級域名是相同的,那Session互通就很容易了。
我們知道,Session中的SessionID是存儲在Cookie中的,如果域名不同,那么由于隱私策略的限制,不同域名間的Cookie是隔離的,所以Session默認情況下是無法共享的。
兩個站如果頂級域名是相同的,那兩個站在設置Cookie時domain設置為頂級域名就能共享Cookie從而實現Session互通。
當然了,要實現Session互通方案很多,除了上面說到的Cookie傳遞SessionID的方式外還有以下幾種:
1、Session入庫
Session入庫顧名思義就是將Session的落地方式改為數據庫存儲,這樣可以有效解決SSO和跨域問題。
2、將Session存入NoSQL
實現原理和上面的Session入庫差不多,將Session存入NoSQL(如Redis)中,可以避免數據庫操作帶來的性能開銷。
以上,如果多個網站頂級域名相同,那利用Cookie共享來實現Session互通的成本是最低的;如果多個站頂級域名不同,建議借助Redis來實現Session互通共享。
以上就是我的觀點,對于這個問題大家是怎么看待的呢?歡迎在下方評論區交流 ~ 我是科技領域創作者,十年互聯網從業經驗,歡迎關注我了解更多科技知識!