dch*_*rov 45
如果手动创建表单(即不使用yii表单方法),则应添加如下输入字段:
<input type="hidden" name="_csrf" value="<?=Yii::$app->request->getCsrfToken()?>" />
Run Code Online (Sandbox Code Playgroud)
来源:http://zero-exception.blogspot.com/2015/01/yii2-using-csrf-token.html
小智 20
将其添加到布局的head部分: <?= Html::csrfMetaTags() ?>
Amo*_*gei 14
这个问题有各种解决方案,我想首先理解它为什么会有所帮助解决问题.
如果CSRF不是问题,
如果您正在运行linux,请检查php.ini文件以获取以下输入:
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size = 8M
; Whether to allow HTTP file uploads.
; http://php.net/file-uploads
file_uploads = On
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 2M
Run Code Online (Sandbox Code Playgroud)
根据您的计算,调整上面的php.ini参数以满足您的需求,然后进行测试.我有类似的问题,我解决了它.
小智 7
要在整个应用程序中永久禁用 csrf 验证,请在您的配置中添加以下代码。
$config = [
'components' => [
'request' => [
'enableCsrfValidation' => false,
],
],
];
Run Code Online (Sandbox Code Playgroud)