操作系统更新后,Web 服务器/PHP/MediaWiki 不再正确处理“更大”的 HTTP 请求。Wiki 文章内容在大约 6K 个字符后被截断,MediaWiki 报告会话丢失。
症状:我首先认识到我以前安装的 MediaWiki (PHP) 的错误。当我编辑一篇文章并且它的大小变得大于大约。6k 个字符,文章文本被截断,MediaWiki 拒绝保存新文本但报告丢失会话错误。较小的文章不受影响。
问题: 这可能是 PHP 中的错误吗?我应该提交错误报告吗?还是我做错了什么?是不是配置错误?
背景:在家里,我最近将我的 raspbian LAMP 服务器从 wheezy 更新为 jessie。以前一切都很好。
- 操作系统:Raspberry Pi 上的 Raspbian jessie(以前称为 wheezi)。
- 阿帕奇 2.4。
- phpinfo() 没有显示 suhosin 的迹象,这有时会导致较大的 http 请求出现问题。此外,有时在 Web 上提到的其他相关 PHP 参数也不值得怀疑:PHP 版本 5.6.24-0+deb8u1。max_input_time=60, max_execution_time=30, post_max_size=8M
到目前为止我尝试了什么:
- 其他 PHP 程序:为了进一步调查,我通过一个简单的 PHP 文件上传脚本上传了文件。类似的问题;文件上传不起作用。(供您参考,上传脚本的代码取自这里: http: //www.codingcage.com/2014/12/simple-file-uploading-with-php.html该脚本使用简单的表单数据,没有 Ajax , 没有 JSON, ...)
- 较大的文件导致拆分:此外,较大的 http 文件上传请求(使用数百 KB 的文件)似乎被拆分为两个请求。apache 访问日志文件显示(请记住,这实际上只是来自浏览器的单个请求):
- ... - - [05/Aug/2016:10:52:38 +0200] "POST /simpleupload.php HTTP/1.1" 200 85689 " https://.../simpleupload.php " "Mozilla/5.0 ( Windows NT 6.1;WOW64;rv:38.0) Gecko/20100101 Firefox/38.0"
- ... - - [05/Aug/2016:10:52:38 +0200] "\xb4W\xcd\xff" 400 557 "-" "-" -
- 其他浏览器:可以使用不同的浏览器复制该行为:Linux 上的 Firefox、Windows 上的 Firefox 38 以及同一台机器上的 elinks 浏览器。
- 消除网络问题:我使用 elinks 访问本地主机上的网络服务器。MediaWiki 和 PHP 文件上传脚本中的相同问题。
- 增加日志级别:增加 Apache LogLevel 以进行调试不会在请求处理期间带来任何新信息。
- Perl 不会出现错误:使用 Perl 编写的不同文件上传脚本不会出现该问题。文件上传工作正常。所以,这似乎不是操作系统,Apache,浏览器的问题,......
备注:这是我试图改写我的锁定/保留问题https://unix.stackexchange.com/questions/301444/small-http-requests-get-truncated,我不能再编辑了。
就我而言,我按照https://wiki.debian.org/LaMp中的说明执行“aptitude install php5 php5-mysql libapache2-mod-php5”,将已安装的 libapache2-mod-php5filter 替换为 libapache2-mod-php5。这解决了我的问题。
这是两个包之间差异的解释链接:apache2 和 php5: module 或 filter。但是,我不明白为什么在我的情况下过滤器会导致奇怪的问题。但是,无论如何,现在已经解决了。