我见过几个问题都有相同的问题,大多数都提出了以下解决方案
- 递增
php.ini
文件中的post_max_size
(设置为8M) - 递增
php.ini
文件中的upload_max_filesize
(设置为8M) - 在
httpd.conf
中设置LimitRequestBody
指令(设置为8388608=8M)
他们都不为我工作
然后我重新启动了apache服务,但仍然存在同样的问题。我试图发送的表单只有5个字段(两个复选框,两个选择,一个文件),我正在上传一个653KB的文件,但不起作用(如果文件小于80K,则起作用),以前从未遇到过这个问题。
设置:
- ArchLinux
- x86_64 Linux 3.10.6-2-ARCH
- PHP 5.4.18
- Apache/2.2.25
- 启用SSL的虚拟主机
我发现问题是,当我启用SSL时,它在131072
(128k)中有一个默认配置SSLRenegBufferSize
。
在虚拟主机目录中添加此指令我可以增加大小,并且错误不再出现:
<VirtualHost *:443>
# ...
<Directory ...>
#...
SSLRenegBufferSize 8388608 # 8M
</Directory>
</VirtualHost>
仅添加
SSLRenegBufferSize 8388608(不含#8M)