如何将cookie限制在我的域上“/admin”?
-
09-10-2019 - |
题
我如何做饼干 session.cookie_path
仅适用于模块 "/admin/"
?
Zend框架代码:
// Se Login?
public static function isLoggedIn() {
$namespace = new Zend_Session_Namespace('Zend_Auth');
$namespace->setExpirationSeconds(60*5); //5 Minutos dura una session
$namespace->cookie_path = '/admin/'
return Zend_Auth::getInstance()->hasIdentity();
}
我无法让phpsession设置为 '/admin/'
. 。 phpsession始终有通往的路径 '/'
在饼干中。 ;-(
解决方案
TypeOneError几乎在那里。您将要使用“ cookie_path”设置,而不是“ cookie_domain”
例子:
Zend_Session::setOptions(array(
'cookie_lifetime' => 0,
'cookie_path' => "/admin",
'cookie_domain' => ".test.com",
'cookie_secure' => false,
'cookie_httponly' => true
));
其他提示
如果我正确理解您,您想将cookie限制在域上的“/admin”?您需要将cookie_path作为选项将其传递给zend_session,而不是其_namespace合作伙伴:
$settings = array("cookie_domain" => "/admin");
Zend_Session::setOptions($settings);
您还可以使用设置对象开始会话:
Zend_Session::start($settings);
您也可以将设置存储在配置文件中:
$config = new Zend_Config_Ini('config.ini', 'development');
Zend_Session::setOptions($config->toArray());
不隶属于 StackOverflow