在我的一个CakePHP站点中,我收到了这个错误。请求实体太大PHP
请求实体太大
我不知道是什么问题。我认为我通过表单发布的数据太大了。我在搜索引擎中搜索这个,得到了我将不得不增加post_max_size
。默认情况下,我认为它设置为8M。
但不知道如何增加CakePHP中的post_max_size
以及该怎么做?
谢谢。
在我的一个CakePHP站点中,我收到了这个错误。请求实体太大PHP
请求实体太大
我不知道是什么问题。我认为我通过表单发布的数据太大了。我在搜索引擎中搜索这个,得到了我将不得不增加post_max_size
。默认情况下,我认为它设置为8M。
但不知道如何增加CakePHP中的post_max_size
以及该怎么做?
谢谢。
post_max_size
和upload_max_filesize
是PHP.ini设置。您可以直接使用PHP.ini或通过ini_set
来设置它们。我不知道这是否也可以用一些Cake的内部工具来设置。
但是,错误也可能是由set limit of the RequestBodyLength in Apache(假设您在Apache下运行)引起的。
我认为你需要在PHP配置文件php.ini中设置它。如果你有一个VPS /根级别的访问权限,那就增加这个大小。如果你不(共享主机),你可以在运行时修改php ini参数。请注意,ini_set()在这里不起作用,因为PHP设置的加载太迟(在文件上传后,PHP脚本开始执行)。
你需要在你的htaccess文件如下(在共享主机):
php_value post_max_size 104857600
这是可能的,这将无法正常工作。一些搜索引擎使得看起来好像一些共享主机会锁定这个设置,使得它在htaccess中不可用(仅在主服务器配置中)。如果是这样的话,你需要移动主机。
有时在共享主机上,您可以添加自己的php.ini文件 - 只需将相关位从任何默认文件(或一个谷歌)中复制出来即可。
这不是我以前见过的错误 - 可能正如Gordon所说的,是Apache。
不要害怕问托管支持团队 - 我总是发现他们非常有帮助(我认为他们必须感到孤独),并且他们经常会为您进行配置更改。
它当然不是CakePHP问题。
我尝试了所有这些答案,唯一对我有用的是调整SSL缓冲区大小。您可以设置此...
<Directory /my/blah/blah>
...
# Set this to something big big...
SSLRenegBufferSize 10486000
...
</Directory>
...然后只需重新启动Apache即可生效。 (发现在:http://forum.joomla.org/viewtopic.php?p=2085574)
只需更改为需要SSL。这解决了它。 – zachswain 2016-01-29 18:34:25
“413请求实体太大”错误的另一个可能的原因是mod安全性。这是我的原因。
展望网站的Apache的错误日志中说:
的ModSecurity:要求身体没有任何文件的数据长度超过配置的限制(131072)大..与代码(413)
否认我的Ubuntu 14.04的配置文件是在这里,但这个真的取决于系统:
/etc/modsecurity/modsecurity.conf
有是默认值SecRequestBodyNoFilesLimit(也可能是SecRequestBodyInMemoryLimit)。
非也CakePHP的问题,但这里有你需要为了设置正确上传文件中的两个设置:
vim /etc/php5/php.ini (or wherever the .ini is located)
并设置:
post_max_size="200M"
upload_max_filesize="200M"
现在棘手的问题的情况下,你是使用HTTPS!您还需要配置一个SSL。
vim /etc/apache2/sites-available/<whatever>-443.conf
,并设置SSLRenegBufferSize
<Directory /appdata/www/<whatever>/web>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
SSLRenegBufferSize 201048600
</Directory>
此外,处处阿帕奇捞出用'HTTP_REQUEST_ENTITY_TOO_LARGE',有一个日志语句,所以应该是究竟得罪了Apache的有关请求的大小的说明在错误日志中。 – 2010-09-15 20:50:55
是的。但是在CakePHP中,我将不得不使用ini_set来设置它? – gautamlakum 2010-09-16 08:16:25
@lakum在引导文件中。但是像Travis指出的那样,一些ini值不能在运行时设置。我没有检查这是否适用于'post_max_size'和'upload_max_filesize'。 – Gordon 2010-09-16 08:22:28