nginx 413请求实体太大

5lhxktic  于 5个月前  发布在  Nginx
关注(0)|答案(4)|浏览(63)

我使用nginX/1.6和laravel当我发布数据到服务器我得到这个错误413请求实体太大。我尝试了许多解决方案如下

1- set client_max_body_size 100m; in server and location and http in nginx.conf.
2- set upload_max_filesize = 100m in php.ini
3- set post_max_size = 100m in php.ini

字符串
重新启动php5-fpm和nginx后,问题仍然没有解决

b1zrtrql

b1zrtrql1#

在/etc/nginx/nginx.conf的http部分中添加“client_max_body_size xxM”,其中xx是您希望允许的大小(MB)。

http {
      client_max_body_size 20M;         
}

字符串

vhmi4jdf

vhmi4jdf2#

我也有同样的问题,但在docker.当我面对这个问题,添加client_max_body_size 120M;到我的Nginx服务器配置,
nginx默认配置文件路径为/etc/nginx/conf.d/default.conf

server {
    client_max_body_size 120M;
    ...

字符串
它调整最大的主体大小为120兆字节.注意你把client_max_body_size,因为它的作用域.例如,如果你把client_max_body_size在一个位置作用域,只有位置作用域将与影响.
之后,我确实将这三行添加到了我的PHP docker文件中

RUN echo "max_file_uploads=100" >> /usr/local/etc/php/conf.d/docker-php-ext-max_file_uploads.ini
RUN echo "post_max_size=120M" >> /usr/local/etc/php/conf.d/docker-php-ext-post_max_size.ini
RUN echo "upload_max_filesize=120M" >> /usr/local/etc/php/conf.d/docker-php-ext-upload_max_filesize.ini


由于Docker PHP镜像会自动将路径(/usr/local/etc/php/conf.d/)中的所有设置文件包含到php.ini文件中,因此PHP配置文件将更改这三行,问题必须消失

8yparm6h

8yparm6h3#

我正在使用Docker和PHP 7.4,我也遇到了这个问题。
只是在**docker/php74/目录下的 *.conf文件中添加了一行。

server {
    client_max_body_size 100M;
    ...
}

字符串

dfuffjeb

dfuffjeb4#

即使在nginx.conf文件中添加了client_max_body_size 20M;之后,我在Laravel应用程序中也得到了同样的错误。后来我发现了php.ini中提到的限制。转到/etc/php/<your-php-version>/fpm并在php.ini文件中编辑以下行。

upload_max_filesize = 20M
post_max_size = 20M

字符串
根据您的应用程序需要增加限制大小。不要忘记通过sudo service php8.2-fpm restart重新启动PHP-FPM

相关问题