【发布时间】:2011-12-20 09:57:36
【问题描述】:
我通过 HTTP POST 向 PHP 发送数据。这适用于小于 8MB (8192KB) 的数据,但是当发送大量数据时,PHP 显示 $_POST 变量为空。我强调$_POST 变量甚至不包含帖子字段的名称,它作为一个空数组存在。临界点似乎在 8.0MB 和 9.0MB 之间,当然还会继续更高。
我尝试了以下但没有成功:
ini_set('memory_limit', '500M');
ini_set('post_max_size', '220M');
ini_set('upload_max_filesize', '220M');
我要求数据通过 HTTP POST。数据不能作为文件上传。
Apache 也会对此负责吗?
任何帮助将不胜感激。
【问题讨论】:
-
8MB = 1024KB?真的吗?上次我检查它是 8192KB... 8Mb(兆 bits)是 1024KB(千 bytes),但这与 PHP/Apache 无关...
-
您是否有权通过 ini_set 修改这些设置?
-
@Michael Sazonov 我可以像
ini_set('max_execution_time', 300);这样通过ini_set 更改最大执行时间。所以我认为是的。 -
@Michael Sazonov 没有 .htaccess。
-
ini_set('post_max_size', '220M');和ini_set('upload_max_filesize', '220M');在 php 脚本中不起作用,因为它们是在 PHP 获取文件后应用的。您应该在 php.ini 或 .htaccess 或 vhost config 中定义它们
标签: php apache http post http-headers