У меня проблема с функцией входа в cakephp.Когда я пытаюсь войти в систему под Chrome, мое имя пользователя / пароль принимаются, но сеанс хранится неправильно.Я провел некоторую отладку / поиск и обнаружил, что корень проблемы (по крайней мере, я так думаю) заключается в том, что идентификатор сессии не сохраняется в файлах cookie chrome.Когда я использую firefox, логин работает как положено, и при просмотре куки-файлов в файле cookie отображается идентификатор сессии под именем «CAKEPHP».Однако, когда я просматриваю файлы cookie chrome после входа в систему / доступа к странице, там нет файла cookie, содержащего идентификатор сеанса.В результате идентификатор сессии, похоже, меняется каждый раз, когда я загружаю страницу.Я часами гуглял и искал решение для этого без удачи.Я нашел что-то подобное в http://www.pixelastic.com/blog/273:losing-session-request-cakephp-chrome,, но использование этого решения не помогло мне.Я не знаю, было ли это предназначено для более старой версии CakePHP или нет.Я использую версию 2.0.
Я опубликую код входа, который я использую, но я взял его непосредственно из учебника, поэтому я не думаю, что это проблема (особенно потому, что он работает вFF):
public function login() {
Security::setHash('sha1');
if ($this->Auth->login()) {
$this->Session->setFlash(__('Welcome'));
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('Invalid username or password, try again'));
}
}