【问题标题】:PHP Warning: POST Content-Length of 8978294 bytes exceeds the limit of 8388608 bytes in Unknown on line 0PHP 警告:8978294 字节的 POST 内容长度超过第 0 行未知中 8388608 字节的限制
【发布时间】:2012-07-28 00:03:52
【问题描述】:

在我的 XAMPP 本地开发环境中尝试在 WordPress 上上传导入时遇到此错误:

警告:8978294 字节的 POST 内容长度超过了 Unknown on line 0 中 8388608 字节的限制

我将upload_max_filesize2M 更改为1000M,但这似乎没有任何作用。

有什么想法吗?

【问题讨论】:

  • 尝试将 post_max_size 增加到 20M
  • 如果您只考虑 WP 上传 - 只需增加 post_max_size(所有当前上传一起)和可能 upload_max_filesize(对于单个文件)......但是如果您想隐藏错误,如果有人愿意尝试上传太大的文件(超过你的限制)见stackoverflow.com/questions/21704930/…
  • 给路人的说明:此错误和修复并非特定于 WordPress 或 XAMPP。一般适用于PHP报错POST Content-Length of X bytes exceeds the limit of Y
  • 确保您更新的是正确的 php.ini:stackoverflow.com/a/58999601/470749

标签: wordpress xampp php


【解决方案1】:

这是一个 8MB post_max_size 错误。

将其设置为您喜欢的值。

【讨论】:

    【解决方案2】:

    8388608 字节为 8M,PHP 中的默认限制。将 php.ini 中的 post_max_size 更新为更大的值。

    upload_max_filesize 设置用户可以上传的最大文件大小,同时 post_max_size 设置表单中可以通过 POST 发送的最大数据量。

    所以你可以将upload_max_filesize设置为1兆,这意味着用户可以上传的最大单个文件是1兆字节,但如果post_max_size设置为5,他们可以一次上传5个。

    更改将在服务器重启后生效。

    【讨论】:

    • 还要确保检查 .htaccess 文件中是否存在可能已被覆盖的相同值
    • 我遇到了一个问题,我忘记设置单位“M” - 兆字节,非常感谢!
    • 如果不重新启动 Xamp,它对我不起作用。对于高级 PHP 开发人员来说可能很明显。但它不适合我。
    • 对于 nginx 可能需要重启 php7.2-fpm.service。任何快速的 CGI 服务器。
    【解决方案3】:

    您还需要更改post-max-size

    【讨论】:

      【解决方案4】:

      已经重新启动了您的网络服务器?

      这将强制 php 重新加载 php.ini

      【讨论】:

        【解决方案5】:

        您可能没有上传正确的 zip 文件。就我而言,作为 wordpress 的新手(我曾经进行硬编码),我安装了包含另一个 zip 文件的压缩文件,这是需要上传的实际主题。那么这种情况下需要做的就是解压文件,找到里面的“theme_name.zip”。

        【讨论】:

          【解决方案6】:

          你将不得不改变的价值

          post-max-size
          upload-max-filesize
          

          这两者都可以在 php.ini

          中找到

          重新启动服务器将有助于它开始工作。在运行 XAMIP 的本地测试服务器上,我不得不停止 Apache 服务器并重新启动它。之后效果很好。

          【讨论】:

            【解决方案7】:

            只需在 php.ini 中设置这些:

            upload_max_filesize = 1000M;
            post_max_size = 1000M;
            

            【讨论】:

            • 现在文件名肯定是.user.ini
            【解决方案8】:
            1. 在您的wp-admin 目录根目录中创建新文本文件并将其命名为info.php

            2. 打开info.php并添加这一行:

              <?php phpinfo(); ?>

            3. 保存。

            4. 在任何网络浏览器中转到yourwebsitename(probably localhost)/wp-admin/info.php

            5. 在第 8 行你会看到:Configuration File (php.ini) Path,在我的例子中是C:\Windows,意思是它位于我的 C 盘上。

            6. 在第9行你会看到:Loaded Configuration File,旁边写着C:\xampp\php.ini

            所以我找到了与我的 wordpress 网站相关联的 php.ini 页面。

            1. 转到该路径,找到php.ini

            2. 打开并编辑:

              搜索post_max_size=8M,并将其更改为post_max_size=1000M

              搜索upload_max_filesize=2M,并将其更改为upload_max_filesize=1000M

            3. 返回您的管理页面 → 媒体 → 添加新的

            4. 在底部您会看到 2MB 已更改为 1000M。

            完成此过程后,您必须重新启动网络服务器或仅重新启动计算机。

            【讨论】:

              【解决方案9】:

              前往

              C:\ drive
              

              或安装 xampp 的驱动器 点击 xampp 找到php并打开它,在那里你找到php.ini文件夹 用记事本打开php.ini文件,在“上下查找选项”中找到upload_max_filesizepost_max_size,将这两个值都改成1000M

              【讨论】:

                【解决方案10】:

                转到C:\xamppp\php。在 php.ini 中设置这些值:

                upload_max_filesize = 1000M
                post_max_size = 0M
                

                【讨论】:

                  【解决方案11】:

                  前往

                  C:\drive\xampp(where xampp installed)
                  

                  只需找到 php.ini 文件然后在文件搜索中

                  post_max_size=XXM
                  upload_max_size=XXM
                  

                  使用此代码更改

                  post_max_size=100M
                  upload_max_filesize=100M
                  

                  别忘了重启xampp

                  【讨论】:

                    【解决方案12】:

                    1. 首先你会找到 php.ini 文件。

                    你可以从这个路径找到 php.ini 文件。 C:\xampp\php 或来自 xampp 文件夹。

                    2. 现在打开 php.ini 文件并更改以下内容:

                    1. post-max-size(将 8M 更改为 800M )。

                    2. 上传最大文件大小(将 2M 更改为 2000M )。

                    3. 现在停止 Apache 服务器和 MySQL。

                    4. 现在重启 Apache 服务器和 MySQL。

                    之后效果很好。

                    享受你现在的工作:)

                    【讨论】:

                      【解决方案13】:

                      使用 wamp 执行以下操作,希望它能解决问题

                      在 PHP 选项中进行这些更改以更正:

                      max_execution_time   180
                      
                      memory_limit   512M or your highest available
                      
                      post_max_size  32M
                      
                      upload_max_filesize   64M
                      

                      【讨论】:

                        【解决方案14】:

                        在浏览器中搜索php.ini然后打开,修改这两个值:

                        post_max_size= 1000000000000M
                        
                        upload_max_filesize= 10000000000000M
                        

                        如果你使用记事本打开php.ini文件,你可以通过点击搜索这两个值:
                        cmd + f

                        【讨论】:

                          【解决方案15】:

                          在 XAMPP 面板中,单击 Apache 站点上的 ADMIN 按钮。 然后选择编辑php.ini 并将缺少的 post_max_size 添加到您喜欢的值。

                          post_max_size = 100M
                          

                          【讨论】:

                            【解决方案16】:

                            我通过将以下参数更改为 /etc/php/7.2/apache2/php.ini 文件中的预期值解决了同样的问题

                            upload_max_filesize = 8M;
                            post_max_size = 8M;
                            

                            【讨论】:

                              【解决方案17】:

                              如果从 XAMPP 文件夹更改 post_max_size 设置。它不适合你试试这个。

                              XAMPP 控制面板,单击配置,然后单击PHP (php.ini),然后在此文件中将post_max_sizeupload_max_filesize 编辑为更高的数字。停止 Apache 服务器。启动 Apache 服务器。这对我有用。

                              【讨论】:

                                【解决方案18】:
                                1. 查找 php.ini [\xampp\php]
                                2. 只需在 php.ini 中设置这些:
                                upload_max_filesize = 1000M;
                                post_max_size = 1000M;
                                
                                1. Rebot 服务器
                                  • 停止 Apache 和 MySQL
                                  • 重新启动 Apache 和 MySQL

                                【讨论】:

                                  【解决方案19】:
                                  upload_max_filesize = 8M;
                                  post_max_size = 8M;
                                  

                                  假设您已经更改了上述值。但是当用户尝试上传大于 8M 的大文件时会发生什么?

                                  这就是发生的事情,PHP 显示此警告!

                                  Warning: POST Content-Length of x bytes exceeds the limit of y bytes in Unknown on line 0
                                  

                                  你可以通过添加来避免它

                                  ob_get_contents();
                                  ob_end_clean();
                                  

                                  【讨论】:

                                    【解决方案20】:

                                    如果您的目标是将主题导入您的 Wordpress,那么您可以手动将主题复制粘贴到您的 wp-content->themes 文件夹中并提取它。我刚遇到这个,找不到 WAMP 的 php.ini 文件。

                                    【讨论】:

                                      【解决方案21】:

                                      对于这个错误,您有 2 个选项:

                                      1. 您上传的文件太大,需要使用较小的文件。
                                      2. 将php.ini中的上传大小增加到

                                      upload_max_filesize = 9M; post_max_size = 9M;

                                      【讨论】:

                                      • 我不会让你投反对票,因为我确信你正试图将你的声誉提高到足以在这个网站上拥有有用的特权,但这个答案并没有提供任何新的或有价值的东西多年前没有人说过和赞成。
                                      【解决方案22】:

                                      我通过使用以下设置更新/etc/php.ini 解决了我在centos 7 上的php7 问题:

                                       post_max_size = 500M
                                       upload_max_filesize = 500M
                                      

                                      【讨论】:

                                        【解决方案23】:

                                        正如Optimaz ID 指出的那样,在用户上传的文件大于 php.ini 中设置的 upload_max_filesize 和 post_max_size 的情况下,下面的代码帮助我隐藏了 PHP 错误消息(当较大的值是设置)。

                                        ob_get_contents();
                                        ob_end_clean();
                                        

                                        【讨论】:

                                          猜你喜欢
                                          • 2013-05-16
                                          • 2013-03-24
                                          • 2013-05-16
                                          • 2016-12-22
                                          相关资源
                                          最近更新 更多