2011-10-04 57 views
1

有沒有人在也使用 Zend_Captcha_Image時使用了指令session.cookie_secure?啓用後,每次嘗試登錄時都會失敗。基本上 每個請求都被視爲一個新的會話,因此即使我輸入正確,也無法驗證驗證。我一直在使用Zend_Captcha_Image幾個月沒有任何問題,當session.cookie_secure指令被刪除時,它工作正常。安全的cookies阻止用PHP/Zend登錄

我已經嘗試在php.ini 文件中使用session.cookie_secure指令。 (這不是我現在做的,但是我把它包含在這裏,所以你知道)。

當前我在應用程序引導中調用Zend_Session::setOptions(array('cookie_httponly' => true, 'cookie_secure' => true));。我已將&關閉resources.session.cookie_secure = true無濟於事。

有沒有人有任何想法?

+0

爲什麼在將'session.cookie_secure'指令直接添加到php.ini中時它會工作?您是否閱讀過[官方手冊頁](http://framework.zend.com/manual/en/zend.session.global_session_management.html)上Zend_Session :: start()'使用的默認選項? – Zyava

+0

PHP.ini - >我不記得確切的語法。我的觀點是,當我在php.ini中打開安全cookie時,我得到了相同的結果。是的,我已閱讀手冊。 – pirhac

+0

好的,在這種情況下,你需要從你的php.ini中獲取cookie設置[session_get_cookie_params](http://php.net/manual/en/function.session-get-cookie-params.php),並將它們設置爲' Zend_Session :: setOptions()'在你的引導文件中。我想你的php.ini和Zend_Session配置中的域和/或路徑是不同的。 – Zyava

回答

3

cookie_secure設置僅適用於SSL。不要設置它,除非您的服務器上已啓用SSL並帶有證書。通常,您可以在生產站點上啓用該功能,並在開發服務器上將其禁用。