我在使用yii2的形式在服务器上工作时遇到问题。我在我的本地机器上有项目,它工作正常,但在服务器上(据说配置相同)它失败了。我在请求中看到csrf cookie丢失了。
它仅发送PHPSESSID。我在meta中有csrf,并作为隐藏输入。在我的本地配置中,相同的代码工作得很好。当我回顾一下例如phpinfo时,似乎只有很少的细微差别,这些差异不会对此产生影响。
我不确定这里是否存在任何可能非常重要的apache差异。我本地的版本是2.4,服务器版本是2.2。除此之外其他一切看起来都一样。
答案 0 :(得分:-2)
首先在控制器中添加以下功能:
public function beforeAction($action) {
$this->enableCsrfValidation = false;
return parent::beforeAction($action);
}
或者添加
public $enableCsrfValidation = false;
在您的控制器类
中希望这会对你有所帮助。如果是这样,请标记为已批准。