413:HTTPS上的请求实体太大


413: Request Entity Too Large on HTTPS

我见过几个问题都有相同的问题,大多数都提出了以下解决方案

  1. 递增php.ini文件中的post_max_size(设置为8M)
  2. 递增php.ini文件中的upload_max_filesize(设置为8M)
  3. 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)