【问题标题】:413 Request Entity Too Large - File Upload Issue413 请求实体太大 - 文件上传问题
【发布时间】:2014-08-09 23:25:16
【问题描述】:

我正在尝试在我的服务器上上传 30MB 的文件,但它无法正常工作。

  1. 当我上传 30MB 的文件时,页面加载“Page Not Found

  2. 当我上传 3MB 文件时,我收到“413 Request Entity Too Large” nginx/0.6.32

我正在尝试查找 nginx,以便增加“client_max_body_size”,但我无法在我的服务器上找到安装的 nginx。我什至尝试过跑步:

vi /etc/nginx/nginx.conf

vi /usr/local/nginx/conf/nginx.conf

检查配置文件是否存在,但我在我的服务器上找不到它。

有没有办法解决这个问题?或者我必须在我的服务器上安装 nginx。

编辑:

我已对我的 php.ini 文件进行了所有必要的更改,

post_max_size 128M
upload_max_filesize 100M
memory_limit 256M

谢谢, 拉朱

【问题讨论】:

  • 嗨 Mohammad,我已经在寻找 nginx,但在我的服务器上找不到它。我确定,我的服务器上没有安装 nginx,所以我很困惑为什么我会收到属于 Nginx 的错误消息
  • 首先你必须确保你的服务器上没有安装 ngix,但如果你完全确定,它可能是出于安全原因,一些服务器管理器为迷惑黑客使用了这个技巧
  • 你试过ps aux | grep nginx看看它是否在运行吗?
  • 你试过which nginx吗?这将为您提供可执行文件的位置,而不是配置文件,但它至少应该确认是否安装了 nginx。

标签: php nginx apache2


【解决方案1】:

来源: http://www.cyberciti.biz/faq/linux-unix-bsd-nginx-413-request-entity-too-large/

编辑nginx的conf文件:

nano /etc/nginx/nginx.conf

在http部分添加一行:

http {
    client_max_body_size 100M;
}

不要用MB不行,只有M!

另外别忘了重启nginx

systemctl restart nginx

【讨论】:

  • 当我这样做时,我的 413 变成了 404。我在 EC2 上使用 Amazon Linux。 nginx 文档也显示一个小写的“m”。 nginx.org/en/docs/http/…
  • 它要求输入密码来更改文件。但我不记得设置了一个。我错过了什么吗?
  • nano 的路径应该是 nano /etc/nginx/nginx.conf 。
  • 为我工作,但注意:如果您的配置已经有 http { } 部分,请将其余部分添加到其中!添加新的http {} 部分将失败并在Nginx 日志中给出"http" directive is duplicate 错误。
【解决方案2】:

-在 php.ini 中(在 /etc/php.ini 内)

 max_input_time = 24000
 max_execution_time = 24000
 upload_max_filesize = 12000M
 post_max_size = 24000M
 memory_limit = 12000M

-in nginx.conf(在/opt/nginx/conf里面)

client_max_body_size 24000M

它适用于我的情况

【讨论】:

  • 嗨 Arun,我们服务器的问题是,我找不到安装的 nginx,但它仍然给出 nginx 错误
  • 在 /opt 或 /etc 中找到 nginx。在 nginx 中找到 conf 文件夹,然后找到 nginx.conf。
  • 如果上面的想法不起作用,那么通过任何搜索工具在整个 Linux 中搜索 nginx.conf。
  • ` max_input_time = 24000`, 24000 是以毫秒为单位的吗?
  • @RishabhAgrahari 秒!这以秒为单位设置最长时间。默认设置为 -1,这意味着使用 max_execution_time 代替。设置为 0 以允许无限时间
【解决方案3】:

首先编辑Nginx配置文件(nginx.conf

位置:sudo nano /etc/nginx/nginx.conf

添加以下代码:

http {
        client_max_body_size 100M;
}

然后在PHP配置文件中添加以下几行(php.ini)

位置:sudo gedit /etc/php5/fpm/php.ini

添加以下代码:

memory_limit = 128M 
post_max_size = 20M  
upload_max_filesize = 10M

【讨论】:

  • 我按照指示打开了我的nginx.conf 文件,但它是空的!我没想到会这样,但是当我添加您的代码时,它仍然可以正常工作……正如我猜想的那样,但由于某种原因我没有这样做,而且当它这样做时我很高兴!
【解决方案4】:
sudo nano /etc/nginx/nginx.conf

然后在http部分添加一行

http {
    client_max_body_size 100M;
}

不要只使用 MB 的 M。

systemctl restart nginx

然后为php定位

sudo gedit /etc/php5/fpm/php.ini

目前最大使用 php 7.0 或更高版本

sudo nano /etc/php/7.2/fpm/php.ini     //7.3,7.2 or 7.1 which php you use

检查那些按你的愿望增加的。

memory_limit = 128M 
post_max_size = 20M  
upload_max_filesize = 10M

重启php-fpm

service php-fpm restart 

【讨论】:

    【解决方案5】:

    我将更改直接添加到我的虚拟主机而不是 nginx 的全局配置中,如下所示:

       server {
         client_max_body_size 100M;
         ...
       }
    

    然后我更改 php.ini 中的参数,就像上面的 cmets:

       max_input_time = 24000
       max_execution_time = 24000
       upload_max_filesize = 12000M
       post_max_size = 24000M
       memory_limit = 12000M
    

    而你不能忘记的是重启nginx和php-fpm,在centos 7中是这样的:

      systemctl restart nginx
      systemctl restart php-fpm
    

    【讨论】:

      【解决方案6】:

      请输入域 nginx 文件:

      nano /etc/nginx/sites-available/domain.set
      

      将此代码添加到文件中

      client_max_body_size 24000M;
      

      如果出现错误,请使用此命令

      nginx -t
      

      【讨论】:

        【解决方案7】:

        我遇到了同样的错误,并通过以下步骤修复了它。

        1. 首先,编辑 nginx.conf 文件。

          vi /etc/nginx/nginx.conf

        在 HTTP 部分,添加以下行。

        http {
        
            client_max_body_size 100M;
        }
        
        1. 终于用下面的命令重启了 Nginx。

        systemctl restart nginx

        【讨论】:

          【解决方案8】:

          假设您在 php.ini 文件中进行了必要的更改:

          您可以通过在以下路径中找到的 nginx.conf 文件中添加以下行来解决此问题:

          /etc/nginx/nginx.conf
          

          然后使用 vim 文本编辑器编辑文件如下:

          vi /etc/nginx/nginx.conf
          

          并添加足够大的值的client_max_body_size,例如:

          client_max_body_size 20MB;
          

          然后确保使用:xi:wq 保存

          然后重启你的 nginx。

          就是这样。

          为我工作,希望这会有所帮助。

          【讨论】:

            【解决方案9】:

            我通过上述更改进行了上传。但是当我进行更改时,我开始在文件上传中收到 404 响应,这导致我进行进一步调试并通过检查 nginx error.log 找出它的权限问题

            解决方案:

            检查 /var/lib/nginx 上的当前用户和组所有权。

            $ ls -ld /var/lib/nginx
            

            drwx------。 3 nginx nginx 10 月 5 日 17 日 19:31 /var/lib/nginx

            这表明可能不存在的名为 nginx 的用户和组拥有该文件夹。这会阻止文件上传。

            在我的例子中,“/etc/nginx/nginx.conf”中提到的用户名是

            user vagrant; 
            

            在本例中将文件夹所有权更改为 nginx.conf 中定义的用户 vagrant。

            $ sudo chown -Rf vagrant:vagrant /var/lib/nginx
            

            验证它是否真的改变了。

            $ ls -ld /var/lib/nginx
            drwx------. 3 vagrant vagrant 17 Oct  5 19:31 /var/lib/nginx
            

            重新加载 nginx 和 php-fpm 以获得更安全的 sade。

            $ sudo service nginx reload
            $ sudo service php-fpm reload
            

            权限被拒绝错误现在应该消失了。检查 error.log(基于 nginx.conf error_log 位置)。

            $ sudo nano /path/to/nginx/error.log
            

            【讨论】:

              【解决方案10】:

              打开文件/etc/nginx/nginx.conf 添加或更改client_max_body_size 0;

              【讨论】:

                【解决方案11】:

                用途:

                php -i
                

                命令或添加:

                phpinfo();
                

                获取配置文件的位置。

                根据您的需要和服务器更新这些变量

                max_input_time = 24000
                max_execution_time = 24000
                upload_max_filesize = 12000M
                post_max_size = 24000M
                memory_limit = 12000M
                

                在 Linux 上,您需要重新启动 nginx / apache 和 phpfpm 服务,以便加载新的 ini 设置。在 xampp、ammps 上,您可以从此类应用程序附带的控制面板重新启动它们。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 2021-06-18
                  • 2017-02-16
                  • 2017-01-11
                  • 2021-02-11
                  • 2014-12-30
                  • 2014-12-23
                  相关资源
                  最近更新 更多