如何修复 * bytes 的 Content-Length 超过 * bytes 的限制
Posted
技术标签:
【中文标题】如何修复 * bytes 的 Content-Length 超过 * bytes 的限制【英文标题】:How to fix Content-Length of * bytes exceeds the limit of * bytes 【发布时间】:2017-03-12 00:10:10 【问题描述】:我的问题是当我上传的文件超出了我在脚本中设置的限制 (5 MB) 时,它会在网站顶部显示此警告:
警告:32485176 字节的 POST 内容长度超过了 Unknown on line 0 中 20971520 字节的限制
例如,我在这里上传了一个超过 (30 MB) 的文件,但是当我上传一个超过 (5 MB) 且小于 30(或不是那么大)的文件时,它不会显示该警告而只显示错误我想从代码中:
if($file_size > 5000000) echo
"<div>
You Can't Upload More than 5MB of the file
</div>";
我在 localhost 上工作,每次都会出现这个错误,我知道如何通过修改 php.ini 在 localhost 中修复它,但是网站也在线并且网站中没有显示这个错误。 有没有办法将上传的文件大小限制为(5 MB)而不修改 php.ini 文件,因为我认为我没有托管公司的许可来更改限制的 apache 配置。
我希望我的问题很清楚。
感谢您的帮助。
【问题讨论】:
确保您更新的是正确的 php.ini:***.com/a/58999601/470749 【参考方案1】:您可以通过 .htaccess 文件在您的 php 文件目录中更改它...
.htaccess
文件存储在与您的 .php 文件相同的目录中。他们修改该文件夹和所有子文件夹的配置。您只需在您选择的目录中创建一个 .htaccess 文件即可使用它们(或修改它,如果存在的话)。
以下内容可以让您增加上传限制(如果服务器提供商允许通过 .htaccess 更改 PHP 配置)。
php_value upload_max_filesize 100M
php_value post_max_size 105M
【讨论】:
感谢先生回复,不幸的是托管公司不允许更改上传最大文件,我已经尝试了您提供的代码:php_value upload_max_filesize 100M php_value post_max_size 105M in .htaccess file,它显示错误: 500 Internal Server Error 还有其他方法吗? 您必须联系您的网络服务器提供商并要求为您的主机设置 AllowOverride 选项或将这些行放入他们的虚拟主机配置文件中。 设置 error_reporting(E_ALL) 并查看是否有任何显示。这不是正确的方法。但您可以隐藏此警告。【参考方案2】:你只是在 php.ini 中设置
然后设置:
upload_max_filesize = 1000M;
post_max_size = 1000M;
然后重启你的服务器..
【讨论】:
【参考方案3】:您好,转到您的 Xampp 目录,然后如下所示:- xampp\php\php(配置文件)
查找 post_max_size(确保您位于文件顶部) 然后改变
post_max_size = 2M To post_max_size 1000M
upload_max_filesize = 8M To upload_max_filesize = 1000M
现在重启你的apache服务器,或者如果仍然错误重启apache,mysql也
如果有任何问题请告诉我
【讨论】:
以上是关于如何修复 * bytes 的 Content-Length 超过 * bytes 的限制的主要内容,如果未能解决你的问题,请参考以下文章
使用 Python C 扩展时如何修复 'UnicodeDecodeError: 'utf-8' codec can't decode byte'?
如何使用 Apache Kafka 修复 Python2.7 中的“AssertionError: Value must be bytes”错误
Invalid Byte Sequence in US-ASCII (Argument Error) 问题修复