我的主機要求我爲SSL安全訪問(共享SSL)使用不同的域,因此我需要在兩個域之間轉換用戶會話。該頁面的一部分位於http://example.com
處,而SSL'd部分位於https://example.hosting.com
處。因此,我無法設置跨域Cookie。手動啓動與域之間的特定ID /轉換會話cookie的會話
我想要做的就是在過渡會話ID和重新設置這樣的餅乾:
- ,用戶點擊鏈接到安全區域,並進入:
http://example.com/secure/page
,這會導致一個重定向到:https://example.hosting.com/secure/page?sess=ikub...
,它復活了會議,並設置新的Cookie有效的域,然後重定向到:https://example.hosting.com/secure/page
這可以工作到會議應該復活的地步。我做:
function beforeFilter() {
...
$this->Session->id($_GET['sess']);
$this->Session->activate();
...
}
至於我可以告訴這個應該給定ID啓動會話。它實際上會生成一個新的會話ID,並且此會話爲空,數據不會被恢復。
這是在CakePHP 1.2.4上。我是否需要做其他事情,還是有更好的方式去做我想做的事情?
聽起來太麻煩了,可能比現在的系統更容易出錯。感謝您的輸入。 :) – deceze 2010-05-25 07:21:37