2013-02-16 83 views
2

UPDATE:丟失會話以SSL

站點現在適用於所有的瀏覽器現在,Chrome。我認爲這很奇怪 - 從服務器切換到使用SSL以來,這一切都已經出現。

正如我已經把這個應用程序中的建議:

ini_set('session.use_trans_sid', true); 
ini_set('session.use_cookies', true); 
ini_set('session.use_only_cookies', true); 

$https = false; 

if(isset($_SERVER['HTTPS']) and $_SERVER['HTTPS'] != 'off') { 
    $https = true; 
} 

$dirname = rtrim(dirname($_SERVER['PHP_SELF']), '/') . '/'; 

session_name('money'); 
session_set_cookie_params(0, '/', $_SERVER['HTTP'], $https, true); 
session_start(); 

但我仍只是不能獲取會話設置 - 因此控制器在取決於所需的應用是根據各地MVC頁面加載到URL中。

會話正在通過必需/包含文件傳遞嗎?

+0

否確定這是否是愚蠢的,但檢查[在PHP中從HTTP切換到HTTPS時會話丟失](http://stackoverflow.com/questions/441496/session-lost-when-switching-from-http-to -https-in-php) – 2013-02-16 11:51:41

+0

Nah完全不同 - 我的問題是當您在HTTPS頁面上保留頁面 – 2013-02-19 10:54:11

+0

您需要更多地解釋您的情況,因爲您已經添加了獎勵。如果你想得到準確的答案,那麼給出你的問題的更詳細的解釋,並儘可能向我們展示一些代碼。 – Aborted 2013-02-19 15:21:45

回答

6

與被鉻請求的Favicon.ico有關 - 我永遠不會猜到。

非常感謝所有幫助過我的人!

+4

這怎麼可能?你是如何解決這個問題的?仍然,+1自我解決。 – 11684 2013-02-25 18:01:07

+0

Chrome只是不斷嘗試在SSL上查找服務器上的某些文件(favicon和樣式表),如果它找不到它,它會阻止會話...非常奇怪。通過搜索的流量負載發現,一個關係是favicon,給它一個去和繁榮! – 2013-03-27 14:31:15

0

HTTP當您在同一服務器上的HTTPHTTPS服務之間切換時,會話ID未被傳遞到HTTPS會話。您可以通過將會話ID從HTTP傳遞給HTTPS來進行設置。

您可以到HTTPS或HTTPS管理之間的HTTP會話HTTP:使用頁面之間

  1. 發送會話ID由POST GET
  2. POST會話ID
  3. 使用文件來保存會話
  4. 使用會話餅乾
  5. 使用數據庫保存會話