使用nginx反向代理出的域名作为网关进行配置,上传文件超过1M时接口报错。
使用域名配置网关调用文件服务时,小文件可以上传,超过1M就报错413【Request Entity Too Large!】,nginx的错误,因为代理域名的nginx的服务器上配置中默认限制了文件上传大小,需要手动添加配置去解决
找到nginx的配置文件nginx/conf/nginx.conf,在location块中添加其中的配置为:client_max_body_size 200m; # 改为你需要的大小!,并重新加载nginx配置文件即可
client_max_body_size 1024m;
Hzero中对象存储服务MINIO在使用NGINX进行反向代理时出现对象无法正常共享,在下载文件时,域名所分享出来的文件都报403
【SignatureDoesNotMatch】的错误
在文件服务进行文件下载时,nginx代理出来的minio会报403的错误,错误代码为:SignatureDoesNotMatch,网上查询是签名不正确,和nginx反向代理在做转发的时候所携带的header有关系.
upstream minio{
server 10.1.xx.x:9000;
}
server {
listen 9000;
server_name demo.xxx.com;
location / {
proxy_pass http://minio;
client_max_body_size 1024m;
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
其中下面的参数意义为:
Host 包含客户端真实的域名和端口号;
X-Forwarded-Proto 表示客户端真实的协议(http还是https);
X-Real-IP 表示客户端真实的IP;
X-Forwarded-For 这个Header和 X-Real-IP 类似,但它在多层代理时会包含真实客户端及中间每个代理服务器的IP;
参考链接:
https://min.io/docs/minio/linux/integrations/setup-nginx-proxy-with-minio.html?ref=docs-redirect