2016-09-29 100 views
3

我在本地測試應用程序是好的。我部署到服務器與https域。當我提交表單然後顯示400錯誤:錯誤請求(#400):無法驗證您的數據提交。CSRF令牌不起作用(yii2)與https

,並與Https問題,如何解決它

+0

我關閉$ enableCsrfValidation = false,它的工作。現在我想讓用戶csrf驗證數據。 – dungphanxuan

+0

顯示您的代碼。 –

回答

5

發送通過HTTPS時受阻也許你有非安全區。嘗試在配置:

return [ 
    // ... 
    'components' => [ 
     // ... 
     'request' => [ 
      'class' => 'yii\web\Request', 
      'csrfCookie' => [ 
       'httpOnly' => true, 
       'secure' => true, 
      ], 
     ], 
    ], 
]; 
+0

是的,我嘗試將$ enableCsrfValidation設置爲true,並按照您的說法進行設置,因此它不起作用。我會再次測試。 – dungphanxuan

+0

使用您正在使用的表單代碼以及處理它的控制器的操作編輯您的問題。 – Bizley

+0

我再次嘗試訪問,所以現在它工作完美,謝謝 – dungphanxuan