Fixed Trac#300: each iTop instance now uses its own name for the cookie storing the session ID. Therefore several instances can coexist independently on the same server.

SVN:trunk[913]
This commit is contained in:
Denis Flaven
2010-10-22 06:09:51 +00:00
parent 135353aa76
commit 006453678b
4 changed files with 13 additions and 0 deletions

View File

@@ -339,6 +339,7 @@ EOF
static function DoLogin($bMustBeAdmin = false, $bIsAllowedToPortalUsers = false)
{
$operation = utils::ReadParam('loginop', '');
session_name(utils::GetConfig()->Get('session_name'));
session_start();
if ($operation == 'logoff')

View File

@@ -110,6 +110,14 @@ class Config
'source_of_value' => '',
'show_in_conf_sample' => false,
),
'session_name' => array(
'type' => 'string',
'description' => 'The name of the cookie used to store the PHP session id',
'default' => 'iTop',
'value' => '',
'source_of_value' => '',
'show_in_conf_sample' => true,
),
);
public function IsProperty($sPropCode)

View File

@@ -24,6 +24,7 @@ $currentOrganization = utils::ReadParam('org_id', '');
$operation = utils::ReadParam('operation', '');
require_once('../application/loginwebpage.class.inc.php');
session_name(utils::GetConfig()->Get('session_name'));
session_start();
LoginWebPage::ResetSession();
$oPage = new LoginWebPage();

View File

@@ -1058,6 +1058,9 @@ function SetupFinished(SetupWebPage $oP, $aParamValues, $iCurrentStep, Config $o
$sAuthPwd = $aParamValues['auth_pwd'];
try
{
$sSessionName = sprintf('iTop-%x', rand());
$oConfig->Set('session_name', $sSessionName);
session_name($sSessionName);
session_start();
// Write the final configuration file