Php 请求实体太大apache
我在提交的表格中有8000个复选框。请不要评论这有多糟糕 我的.htaccessPhp 请求实体太大apache,php,apache,.htaccess,laravel-4,Php,Apache,.htaccess,Laravel 4,我在提交的表格中有8000个复选框。请不要评论这有多糟糕 我的.htaccess php_value post_max_size 20M php_value max_input_vars 10000 php_value suhosin.get.max_vars 10000 php_value suhosin.post.max_vars 10000 php_value suhosin.request.max_vars 10000 提交表单时,我收到的请求实体太大错误 当我有3000个复选框时,它
php_value post_max_size 20M
php_value max_input_vars 10000
php_value suhosin.get.max_vars 10000
php_value suhosin.post.max_vars 10000
php_value suhosin.request.max_vars 10000
提交表单时,我收到的请求实体太大
错误
当我有3000个复选框时,它工作得很好。我是否缺少其他设置,或者需要重新启动apache以外的服务
旁白:
我用电脑检查了我的帖子大小
postsize = $("form").not("[type='file']").serialize().length;
结果是
postsize==165655
在查看了正确的日志文件后,我发现modsecurity拒绝了post请求,谷歌搜索帮助我找到了这个解决方案
通过在站点配置中添加以下内容来增加尺寸余量,即etc/apache2/sites available/[your_site.conf]
<IfModule mod_security2.c>
SecRequestBodyNoFilesLimit 5242880
</IfModule>
SecRequestBodyNoFilesLimit 5242880
我使用了一个任意大的数字,但您可以使用任何您觉得合适的数字…您会随着大小增加DOS攻击的暴露/严重性。您是否尝试过将输入变量大小增加到20000左右?也许你的8000个复选框和一些其他表单元素超过了10000个限制。只是尝试一下,还是一样的错误。但是,当我第一次不得不增加最大输入时,复选框太多并没有给我这个错误……它只是毫无错误地截断了复选框。@hjpotter92我在
中放入了LimitRequestBody 0
,但它没有做任何事情来解决这个问题problem@Phil你能检查Apache服务器日志吗?如果是,请在此处粘贴相关行。