大文件上传时出现 Apache 错误 500 (mod_security)

2024-02-18

据我所尝试,通常的解决方案都不适合我。好吧,我的问题是,每次上传“大文件”(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。


事实上你有一个ModSecurity alert意味着您不能有空的activated_rules 文件夹,或者您以其他方式包含规则。

ModSecurity 针对此错误的已知问题 https://github.com/SpiderLabs/ModSecurity/issues/652而且它似乎很容易出现误报。

当我的规则引发太多误报时,主要建议是关闭该规则(我假设正在触发规则 200003,但根据需要替换 id):

SecRuleRemoveById 200003
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大文件上传时出现 Apache 错误 500 (mod_security) 的相关文章

  • URL 重写查询数据库?

    我试图了解 URL 重写的工作原理 我有以下链接 mysite com profile php id 23 我想用用户的名字和姓氏重写上面的网址 mysite com directory liam gallagher 然而 根据我读到的内容
  • 未找到“GuzzleHttp\Client”类

    我同时使用Guzzle http guzzle readthedocs org en latest 并首次推出 Codeigniter 3 0 我也承认我是第一次使用 php 命名空间 我正在尝试根据文档中提供的示例使用 Guzzle 发出
  • 选择选项“selected”属性

    我这里脑子一片空白 基本上我所做的是创建一个迷你文章管理器 每篇文章都可以分配到在选择下拉列表中定义的以下类别之一 Design 发展 Other 当我去编辑一篇文章时 我从数据库中检索了数据并填充了输入和文本区域 我现在想做的是应用sel
  • .htaccess 从 URL + 目录中删除 WWW

    对于很多人来说这似乎不是问题 阅读 我找不到答案 但我想更新以下 htaccess 代码 不仅从 URL 中删除 www 还删除任何子内容访问的目录 RewriteEngine on RewriteCond HTTP HOST www NC
  • 在 PHP 中创建视图 - 最佳实践 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在与另外 2 名开发人员一起开发一个网站 我只负责创建视图 数据在对象中可用 并且我有 getter 来读取数据然后创建 XHTML 页面
  • Processmaker 中的 Jquery Ajaxing

    我正在使用一个名为 ProcessMaker 的网络应用程序 他们不支持 jquery 所以我必须自己弄清楚如何整合它 他们的论坛上有很多人试图完成它 所以幸运的是它现在已经被记录下来 如果有人愿意这样做 这里是我详细介绍了该过程的链接 我
  • 掌握 CodeIgniter - 模板化/加载视图

    尝试学习 CI 并浏览文档以获得更好的理解 如果没有单独的库 我可以通过包含视图列表来制作模板 如下所示 this gt load gt view header this gt load gt view navigation this gt
  • require_once 中的相对路径不起作用

    我有以下结构 otsg gt class gt authentication php gt database php gt user php gt include gt config inc php gt encryption php gt
  • Nginx vs Apache 用于高流量站点

    Would nginx作为高流量网站的网络服务器是否是更合适的选择 我们将建立的网站是一个电子商务网站 如果这有什么不同的话 无论哪种方式 从技术角度来看 我真的对实际的 原因 感兴趣 即 为什么会nginx从技术角度来看 对于此类网站来说
  • Android:Json 无法从 mysql 数据库检索任何文件,它是空的

    我是 android 新手 我正在使用 mysql 数据库 其中我链接 php 文件进行连接 工作正常 但我的代码没有显示任何内容 它只显示背景色黑色 而不是显示数据库中的数据 public class HomeFragment exten
  • 使 Chrome 即使在 500 或 404 代码上也能显示页面(表现得像 Firefox)

    我们正在 Symfony 中开发一个新网站 当 Symfony 遇到错误 例如 找不到路由 并且 debug 设置为 true 时 它 不仅会输出 404 代码 而且实际上会在页面上显示错误 Firefox 显示服务器返回的内容 但 Chr
  • Codeigniter 回显 [::1] 而不是 localhost

    我正在使用 CodeIgniter 3 作为 Web 平台 并尝试将语义 UI CSS 导入到我的页面中 我正在使用 CodeIgniter 来做到这一点base url 方法中的hrefCSS 导入的属性 但是 semantic css
  • 如何从字符串创建对象?

    我尝试了下面的代码 dyn new className param1 param2 obj eval dyn 它编译但它是空的 如何在 PHP 中动态实例化对象 class ClassName obj new class arg1 arg2
  • 删除 PHP 中的标头

    为了允许缓存 PHP 生成的文件 我想确保 Pragma no cache 标头是not放 但是 如何删除可能已经设置的标头 这就对了could有可能 有人在代码中的某个地方写了header Pragma no cache 现在我想确保标头
  • Apache httpd:根据其他*响应*标头有条件地设置响应标头

    有没有办法有条件地设置新的响应标头 其中条件使用另一个response标题 具体来说 仅当响应具有特定的 Content Type 时才应设置新的响应标头 我调查过模组头 http httpd apache org docs 2 2 mod
  • 从 split 切换到 preg_split 时 php preg_split 错误

    在从 split 更改为 preg split 以获得 php 5 3 兼容性后 我从 php 收到此警告 PHP Warning preg split Delimiter must not be alphanumeric or backs
  • 使用 CURL post 方法的 Google 翻译 API

    有人有过使用 Google 翻译 API v2 在 POST 方法上使用 PHP CURL 翻译 HTML 的经验吗 我已经尝试了 github 上的几个代码和库 但没有一个适合我 我发现的是 GET 方法 由于通过 GET 或查询字符串解
  • cmd的字符集

    C Users Kolink gt php r echo C Users Kolink gt echo 正如你所看到的 一个程序输出一个 结果是 但使用echo命令给出所需的字符 并且 我可以配置 PHP 也许是脚本开头的某个命令 来输出正
  • 在 Laravel 5 中创建“设置”模型的最佳实践是什么?

    这是我使用 Laravel 的第一个项目 我从 5 2 开始 我正在建立一个自我管理的网站 有一个管理员应该保存网站设置以供以后在网站中使用 例如 背景颜色 社交网络 图片轮播 产品等 我的第一次尝试是创建一个模型 设置 id key un
  • 如何获取MySQL中最后更新的行的ID?

    如何使用 PHP 获取 MySQL 中最后更新行的 ID 我找到了这个问题的答案 SET update id 0 UPDATE some table SET column name value id SELECT update id id

随机推荐