Невозможно изменить имя файла cookie сеанса php

Я скопировал существующий и успешно работающий сайт на новый сервер разработки.

Логин на новом сервере теперь не работает, и я отследил это до того факта, что, хотя cookie сеанса переименован ...

ini_set('session.name', 'DOMAIN1');

... браузер продолжает сохранять cookie сеанса как PHPSESSID.

Когда я удаляю указанную выше строку из приложения на новом сервере, логин снова работает. Но это не очень хорошее решение, потому что другое приложение также использует PHPSESSID под этим именем.

И я предпочел бы найти причину странного поведения вместо того, чтобы использовать обходной путь. Если я не исправлю это, он может укусить меня где-нибудь еще.

Может быть, этой информации уже достаточно для того, чтобы кто-то дал мне подсказку. Если не, какая информация была бы полезной?

Эта машина была очень голым и простым сервером ubuntu 8.04, и я установил apache2, mysql и php5 с aptitude. Я также обновил локалес и часовой пояс.

Решение:

Я заменил строку выше этим кодом из принятого ответа ...

if(ini_set('session.name', 'DOMAIN1') === false || !session_name('DOMAIN1'))
{
    die('Unable to set sesssion scope');
}

... и теперь логин работает на новом сервере.

7
задан mit 23 October 2010 в 21:18
поделиться