据我所知,通常的解决方案都不适用于我。好吧,我的问题,我每次上传“大文件”(600 KB~)时都会收到500错误,较小的图像可以正常工作。所以...,即使有这个(极端).htaccess文件,它仍然会发生,是的,.htaccess是活跃的:
upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 128M
max_input_time = 6000
max_execution_time = 6000
所以,我看一下日志并找到它(只有一行,只是将其粘贴为易于阅读的行跳转):
[Mon Jul 27 17:09:28.<port> 2015] [:error] [pid 21423] [client <ip>]
ModSecurity: Access denied with code 44 (phase 2).
Match of "eq 0" against "MULTIPART_UNMATCHED_BOUNDARY" required.
[file "/etc/httpd/conf.d/mod_security.conf"]
[line "35"] [id "<another id>"]
[msg "Multipart parser detected a possible unmatched boundary."]
[hostname "<my host>"] [uri "<my script>"] [unique_id "<id (useless I think)"]
但是,现在我无法找到如何编辑mod_security(它有默认配置和空的activated_rules)配置顺序(我认为)允许这个“大”文件上传。我在Apache 2.4 / CentOS 7中运行PHP 5.3。
感谢。
答案 0 :(得分:4)
您拥有ModSecurity alert
的事实意味着您不能拥有空的activated_rules文件夹,或者您以其他方式包含规则。
ModSecurity默认只允许上传512kb(请参阅here),但您可以轻松地将其增加到1Gb,这可能会通过添加以下配置来解决您的问题
SecResponseBodyLimit 1048576
或者只是关闭那个规则(我假设它是规则960915,如果您使用的是OWASP核心规则集则触发):
SecRuleRemoveById 960915
答案 1 :(得分:0)
尝试检查fcgi配置中的FcgidBusyTimeout参数
答案 2 :(得分:0)
我遇到了同样的错误:
ModSecurity: Access denied with code 44 (phase 2). Match of "eq 0" against "MULTIPART_UNMATCHED_BOUNDARY" required. [file "/etc/httpd/conf.d/mod_security.conf"] [line "34"] [id "200003"] [msg "Multipart parser detected a possible unmatched boundary."]
但是@nilpo 的回答是正确的 由于图像名称和更改名称问题解决后,我遇到了这个问题。
但这不是我想要的,因为我知道解决方案,但我的客户不知道他们必须更改名称。
答案 3 :(得分:-1)
重命名您尝试上传的文件。此错误表示文件名包含mod_security不允许的字符。重命名该文件,然后再次尝试上传。通过禁用mod_security.conf中提到的行,它将很乐意跳过此检查,但这会使您的服务器容易受到漏洞的攻击。</ p>
答案 4 :(得分:-1)
所有我找到解决方案!!!
UBUNTU 16.04 + Apache(我的mod_secure工作和上传确定)
<强> 0。 apache a2enmod headers (激活标题和.htaccess)
<强> 1。检查.htaccess !!!!!
//在.htaccess
php_value upload_max_filesize 50M
php_value post_max_size 50M
//如果你想在.htaccess中定制
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
sudo nano /etc/apache2/mods-enabled/security2.conf - 最后2行我发表评论
sudo nano /etc/modsecurity/modsecurity.conf - 配置mod_secure很容易
sudo nano /etc/apache2/apache2.conf - apache配置CTRL + W
//开/关
bash->a2dismod mod-security2 //off
或
bash->a2dismod security2 //off
bash->a2enmod mod-security2 //on
bash->a2enmod security2 //on
modsecurity.conf中的SecRuleRemoveById 950004
强><强> 4。字节转换器 -
这是真的!!!!
4小时!!