【日常-bug】文件上传oss报错-跨域- ‘Access-Control-Allow-Origin

环境:

  • docker
  • nginx
  • vue3
  • spring cloud
  • oss - 阿里文件上传服务

场景:

上传文件大小结果
前端页面小于1M正常
前端页面大于1M报错
postman-调接口大于1M正常

报错信息:

Access to XMLHttpRequest at 'https://ip:44300/base/file/image/uplode' from origin 'http://ip:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

原因:

        nginx 默认上传大小为1m,超过1m报跨域错误

解决方案:

  • Step 1 .修改docker中nginx的配置文件,在http{}中添加client_max_body_size   10m; 

 

  • Step 2 .重启nginx,这里我是容器nginx

        执行: docker restart nginx 即可

nginx 知识点延伸:

client_max_body_size  可以设置在如下3个标签中,http作用域最大

配置描述
http{ }client_max_body_size 20m;控制着所有nginx收到的请求
server{ }client_max_body_size 20m;控制该server收到的请求报文大小
location{ }client_max_body_size 20m;报文大小限制,只对匹配了location 路由规则的请求生效
posted @ 2022-09-20 17:18  随风落木  阅读(66)  评论(0)    收藏  举报  来源