今天我在我的wordpress网站上尝试了不同的主题。我以前在电脑上下载过很多主题。在我选择主题文件并点击立即安装按钮将其上传到服务器后,Nginx说:413请求实体太大。大多数情况下,只需编辑Nginx配置文件即可上传大文件。
增加所有服务器块的上载文件大小
如果在一台Nginx服务器上有多个网站(服务器块),并且希望增加所有网站的上传文件大小。然后你需要编辑nginx。配置文件
sudo vi /etc/nginx/nginx.conf
将以下文本放入http部分
client_max_body_size 2M;
上述Nginx指令意味着上传的最大文件大小为2兆字节。默认值为1M。因此,如果您不指定它并上传一个大于1MB的文件,那么您将得到一个413请求实体太大的错误。您可以根据自己的喜好更改此值。
保存并关闭文件。然后重新加载Nginx配置。您不需要重新启动Nginx。
sudo systemctl reload nginx
或
sudo /etc/init.d/nginx reload
增加单个服务器块的上载文件大小
如果要增加单个服务器块的上载文件大小,则需要编辑服务器块文件。在Debian/Ubuntu服务器上:
sudo vi /etc/nginx/sites-available/yourdoman.com
在CentOS/Redhat服务器上:
sudo vi /etc/nginx/conf.d/yourdomain.com.conf
并将以下行添加到服务器部分。同样,你可以根据自己的需要改变价值。
client_max_body_size 2M;
现在重新加载Nginx配置。
上传大于2兆字节的文件
请注意,PHP还设置了上载文件大小的限制。上传的默认最大文件大小为2M。所以当你上传一个大于2M的文件时,你会遇到这个错误
The uploaded file exceeds the upload_max_filesize directive in php.ini.
然后需要在PHP中更改值。编辑php。ini文件。在Debian/Ubuntu上:
sudo vi /etc/php5/fpm/php.ini
在CentOS/Redhat上:
sudo vi /etc/php.ini
找到以下行:
upload_max_filesize = 2M
将该值更改为与Nginx上载文件大小相同的值。还可以找到下面这一行,增加你喜欢的值。
post_max_size = 8M
保存并关闭文件。然后重新加载php fpm。
sudo service php-fpm reload or sudo systemctl reload php-fpm
您的系统可能有php5 fpm或php7。0-fpm而不是php-fpm。
检查是否已经设置好
在Nginx中设置client_max_body_size值之前,最好检查该值是否已设置,但您不知道。将工作目录更改为/etc/nginx/并执行以下命令:
sudo grep -R 'client_max_body_size'
上述命令将在Nginx config目录下的所有文件中找到该指令。还可以直接打开服务器块文件sudo vi/etc/nginx/conf.d/filename。conf查看服务器块是否已经设置了该值。
最重要的
如果在nginx中指定client_max_body_size的值。然后,服务器块文件中的值将覆盖nginx中设置的值。conf文件。