2014-09-12 5 views
1

У меня есть проект php-торта, который работает как очарование на производственном Linux-сервере.cake php session cookie переменная не получается созданная в localhost

мой код из core.php для обработчика сеанса:

Configure::write('Session', array(
      'defaults' => 'cake', 
      'cookieTimeout' => 0, 
      'cookie' => 'mybeautifulsession' 
)); 

когда я инспектировать элемент я считаю, что есть печенье с именем mybeautifulsession сгенерированного для моего домена на живой. Когда такой же код выполняется на localhost, эта переменная не генерируется в результате, мой компонент auth не работает и не позволяет мне перенаправляться на страницу входа.

Как заставить это работать? Что мне не хватает? Что-то довольно глупое точно.

Благодаря

ответ

0

по умолчанию сессии опция 'торт' сохраняет файлы сессий в каталоге/CakePHP в TMP. Поэтому убедитесь, что каталог/app/tmp и все его подкаталоги в вашей установке для торта доступны для записи пользователем веб-сервера.

Для запуска сайта apache необходимо читать и писать без выполнения. Для доступа к нему (при условии, что вы находитесь в группе, которой принадлежит приложение/tmp), вам также нужно читать и писать, если вы вручную отредактируете вещи с помощью терминала/искателя. Все остальные пользователи не должны иметь никаких прав. Итак:

OSX & Linux: sudo chmod -R 660 app/tmp /. Часть -R должна делать это рекурсивно для всех внутренних папок. Первые 6 - для пользователя (OSX: _www или Linux: www-data), второй - для владельца группы (OSX: staff или Linux: johnsmith), 0 - для всех других пользователей/гостей.

ПРИМЕЧАНИЕ: В соответствии с этой просьбой тянуть за CakePHP это выглядит как CakePHP 2.4 будет иметь возможность создавать вложенные папки в приложение/TMP /, что означает, что будет нуждаться в 7 вместо 6 для пользователя теперь становится 760.

Смежные вопросы