php中http與https跨域共用session的解決方案,httpssession
遇到了HTTP、HTTPS協議下session共用解決cookie失效的問題,這裡提供一個臨時解決辦法。
實現原理:把session id設定到本地的cookie。
如下:
複製代碼 代碼如下:
$currentSessionID = session_id();
session_id($currentSessionID );
以下是實現代碼,分為http與https兩部分。
1,http部分:
複製代碼 代碼如下:
<?php
session_start();
$currentSessionID = session_id();
$_SESSION['testvariable'] = 'Session worked';
$secureServerDomain = 'www.jb51.net';
$securePagePath = '/safePages/securePage.php'
echo '點這裡跳轉到HTTPS 協議';
?>
2,HTTPS部分
複製代碼 代碼如下:
<?php
$currentSessionID = $_GET['session'];
session_id($currentSessionID);
session_start();
if (!emptyempty($_SESSION['testvariable'])) {
echo $_SESSION['testvariable'];
} else {
echo 'Session did not work.';
}
?>
說明:
有點安全問題,session id的傳輸是沒加密的,可以嗅探偵測到,擷取這個session id進而擷取session資料。
建議加密此id。
http://www.bkjia.com/PHPjc/930491.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/930491.htmlTechArticlephp中http與https跨域共用session的解決方案,httpssession 遇到了HTTP、HTTPS協議下session共用解決cookie失效的問題,這裡提供一個臨時解決辦法。...