如相应的PHP manual entry所述,如果上传超出post_max_size
限制,PHP将清除$_POST
和$_FILES
。当post_max_size超出时CakePHP黑洞文件上传
我有类似下面的表单,我使用的Security
组件:
echo $this->Form->create(false, array('type' => 'file', 'action' => '...'));
echo $this->Form->file('documentFile');
echo $this->Form->end('Upload');
现在,当我上传大文件超过所述极限,我得到“请求已经被黑孔条”由于CSRF验证失败 - 这并不奇怪,因为PHP清除$_POST
也会删除CSRF保护令牌。
我可以使用Security->unlockedActions
来解决这个问题,但看起来并不理想(我会失去CSRF保护)。在这种情况下,有什么办法可以防止黑洞?
编辑:我不认为增加post_max_size
的解决方案 - 它只是增加触发黑洞所需的文件大小,但并不能解决核心问题。
增加post_max_size – 2013-05-07 17:19:41
@nathanhayfield,但这也是更多的解决方法,对吗? – 2013-05-07 17:21:02
如果您的目标是上传较大的文件,则不是。 – 2013-05-07 17:22:44