nginx反向代理minio
使用nginx反向代理minio
问题1: 文件大小限制问题
场景:
使用nginx反向代理出的域名作为网关进行配置,上传文件超过1M时接口报错。
问题分析:
使用域名配置网关调用文件服务时,小文件可以上传,超过1M就报错413【Request Entity Too Large!】,nginx的错误,因为代理域名的nginx的服务器上配置中默认限制了文件上传大小,需要手动添加配置去解决
问题最终解决:
找到nginx的配置文件nginx/conf/nginx.conf,在location块中添加其中的配置为:client_max_body_size 200m; # 改为你需要的大小!,并重新加载nginx配置文件即可
1 | client_max_body_size 1024m; |
问题2:文件传输下载报错403 【SignatureDoesNotMatch】
场景:
Hzero中对象存储服务MINIO在使用NGINX进行反向代理时出现对象无法正常共享,在下载文件时,域名所分享出来的文件都报403
【SignatureDoesNotMatch】的错误
问题分析:
在文件服务进行文件下载时,nginx代理出来的minio会报403的错误,错误代码为:SignatureDoesNotMatch,网上查询是签名不正确,和nginx反向代理在做转发的时候所携带的header有关系.
问题最终解决:
1 | upstream minio{ |
其中下面的参数意义为:
Host 包含客户端真实的域名和端口号;
X-Forwarded-Proto 表示客户端真实的协议(http还是https);
X-Real-IP 表示客户端真实的IP;
X-Forwarded-For 这个Header和 X-Real-IP 类似,但它在多层代理时会包含真实客户端及中间每个代理服务器的IP
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 十三不知!