2016-11-14 76 views
0

我有設置cookie的代碼,在localhost中運行良好,但在我將其傳輸到服務器時沒有。需要額外的設置?yii2 cookie設置在本地主機但不在活動服務器

public function setLangCookie() 
{ 
    if(Yii::$app->getRequest()->getCookies()->has('lang')) { 
     Yii::$app->language = Yii::$app->getRequest()->getCookies()->getValue('lang'); 
    }else 
    { 
     $cookie = Yii::$app->response->cookies; 
     $cookie = new yii\web\Cookie([ 
      'name'=>'lang', 
      'value'=>'en',   
     ]); 

     Yii::$app->getResponse()->getCookies()->add($cookie); 
    } 

} 

回答

0

一些到期時間將是很好的,否則的cookie會一直持續到瀏覽器關閉:

'expire' => time() + 60 * 60 * 24 * 30, // 30 days 

如果你需要通過HTTPS發送的cookie,你可以添加此可選:

'secure' => true, 
相關問題