#php #zend-framework #session #cookies
#php #zend-framework #сессия #файлы cookie
Вопрос:
Кто-нибудь использовал директиву session.cookie_secure при использовании Zend_Captcha_Image? При включении каждый раз, когда я пытаюсь войти в систему, происходит сбой. По сути, каждый запрос обрабатывается как новый сеанс, поэтому проверка captcha не выполняется, даже если я ввожу ее правильно. Я использую Zend_Captcha_Image в течение нескольких месяцев без каких-либо проблем, и когда директива session.cookie_secure удалена, она работает нормально.
Я попытался просто использовать директиву session.cookie_secure в файле php.ini. (сейчас я делаю это не так, но я включил это здесь, чтобы вы знали).
В настоящее время я вызываю Zend_Session::setOptions(array('cookie_httponly' => true, 'cookie_secure' => true ));
загрузчик приложения. Я включил и выключил resources.session.cookie_secure = true
безрезультатно.
У кого-нибудь есть какие-либо идеи?
Комментарии:
1. Почему это должно работать, когда вы добавляете
session.cookie_secure
директиву непосредственно в php.ini? Вы читали, какие параметры по умолчаниюZend_Session::start()
используются на официальной странице руководства ?2. PHP.ini —> Я не помню точный синтаксис. Я хочу сказать, что когда я включаю безопасные файлы cookie в php.ini, я получаю те же результаты. Да, я прочитал руководство.
3. Хорошо, в этом случае вам нужно получить настройки файлов cookie из вашего php.ini с помощью session_get_cookie_params и установить их
Zend_Session::setOptions()
в вашем файле начальной загрузки. Я предполагаю, что домен и / или путь в вашем php.ini и конфигурации Zend_Session отличаются.4. Вы переходите на https, верно?
Ответ №1:
cookie_secure
Настройка работает только через SSL. Не устанавливайте его, если у вас не включен SSL с сертификатом на вашем сервере. Обычно вы включаете это для использования на рабочем сайте и отключаете на серверах разработки.