Skip to content

解决域名通过nginx访问无法上传附件报错

解决域名通过nginx访问无法上传附件报错

  • what: 解决域名通过nginx访问无法上传附件报错
  • where: 浏览器、web
  • when: 2022.5.8
  • who: jrt
  • why: 记录
  • how:

1.问题情形:

问题描述:Nginx代理大附件上传413错误
上传附件,在ip+端口以及本地可以正常上传,但是nginx代理出去后上传包413错误 413 – Request Entity Too Large Error and Solution

2.解决方法:

在nginx配置文件中(*.conf)修改以下配置,没有则添加,以下参数必须要放在server下的server_name下,而不是放在localhost /web的大括号里,然后别忘了重启nginx
解决域名通过nginx访问无法上传附件报错

nginx配置

server{
  listen 80;
  server_name localhost;

  client_max_body_size 50m;//限制请求体的大小,若超过所设定的大小,返回413错误。
  client_header_timeout 1m;//读取请求头的超时时间,若超过所设定的大小,返回408错误。
  client_body_timeout 1m;//读取请求实体的超时时间,若超过所设定的大小,返回413错误。
  proxy_connect_timeout 60s;//http请求无法立即被容器(tomcat, netty等)处理,被放在nginx的待处理池中等待被处理。此参数为等待的最长时间,默认为60秒,官方推荐最长不要超过75秒。
  proxy_read_timeout 1m;//http请求被容器(tomcat, netty等)处理后,nginx会等待处理结果,也就是容器返回的response。此参数即为服务器响应时间,默认60秒。
  proxy_send_timeout 1m;//http请求被服务器处理完后,把数据传返回给Nginx的用时,默认60秒。
  
  location /{
    #...
  }
}