3

今天我正在为头像上传文件,一切都很好,它会调整图像大小等,但有时在选择一个大而无效的文件时会产生这个错误:

Warning: POST Content-Length of 52091839 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
You did not select a file to upload.

这不会一直发生,只是偶尔发生。通常,当文件太大时,它只会给出正确的错误消息。

有谁知道这个错误来自哪里,为什么会出现?

谢谢!

4

3 回答 3

5

听起来你需要增加post_max_sizephp.ini。如果您还没有增加upload_max_filesize,您可能还需要增加它。

# php.ini
# Allow huge files:
# Post usually needs to be bigger than file upload size!
post_max_size = 256M
upload_max_filesize 128M
于 2012-08-26T18:36:49.203 回答
2

将您的 in php.ini 更新post_max_size为更大的值

upload_max_filesize设置用户可以上传的最大文件大小,同时post_max_size设置可以通过表单中的 POST 发送的最大数据量。这可能是当您尝试上传单个大文件时有时会出现大文件错误的原因,但当您尝试上传多个文件时会引发上述错误。

于 2012-08-26T18:42:07.827 回答
1

这与上传文件时的编码方式有关。

基本上它被“视为”一个非常大的 POST。

所以你想要你php.ini post_max_size的大于你的upload_max_filesize价值。

根据您使用的编码,它应该大 60% 到 100%。

否则,您的最大文件大小可能为 5 M,但这会被编码为 8.01 M;发生这种情况时,文件大小检查通过,但帖子正文大小检查失败。因此你的错误。

于 2012-08-26T18:45:44.917 回答