2013-02-21 139 views
1

yii默认选项CHttpCookie-> httpOnly在默认情况下设置的整个应用程序配置期间尽可能false false httpOnly = true?yii cookies设置httpOnly

P.S.转让选项不提供,不想进入第三方扩展。

回答

1

根本不是。 Yii中的CHttpCookie直接在其构造函数中使用,即:$cookie = new CHttpCookie //...。所以没有办法注入params。 您可以按照描述here对每个组件进行设置,但它仍然不是全局设置。

但您可以延长CHttpRequest和ovveride addCookieremoveCookie并强制httpOnly那里。要ovveride简单的创建自己的HttpRequest类从CHttpRequest延伸,并将其定义组件使用这样的:

// .. other components 
'request' => [ 
       'class' => 'HttpRequest', 
// optional: 
//    'enableCsrfValidation' => true, 
//    'enableCookieValidation' => true, 
      ], 
// .. other components 

(?我用PHP 5.4数组符号,你不应该是一个问题:)) 另一种方式是克隆框架git回购并将其设置为true ...