nginx反向代理到aws S3 ,解决S3返回500、502、503错误

nginx配置如下:

复制代码
        location ~ .*\.(js|css|woff|woff2|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma|svg|ico|xml|json|map|xhtml|yaml|cur|eot|ttf|mp4|otf|ogg|webp)$ {
                rewrite ^/(.*) /桶名称/test/static/$1 break;
                error_page 500 502 503 504 400 403 404 = /404.html;
                proxy_http_version     1.1;
                proxy_set_header       Connection "";
                proxy_set_header       Authorization '';
                proxy_set_header       Host s3.us-east-1.amazonaws.com;
                proxy_hide_header      x-amz-id-2;
                proxy_hide_header      x-amz-request-id;
                proxy_hide_header      x-amz-meta-server-side-encryption;
                proxy_hide_header      x-amz-server-side-encryption;
                proxy_hide_header      Set-Cookie;
                proxy_ignore_headers   Set-Cookie;
                proxy_intercept_errors on;
                add_header             Cache-Control max-age=2592000;
                proxy_pass             https://s3.us-east-1.amazonaws.com;
        }
        location / {
                rewrite ^/$ /桶名称/test/html/index.html break;
                rewrite ^/(.*)$ /桶名称/test/html/$1 break;
                error_page 500 502 503 504 400 403 404 = /404.html;
                proxy_http_version     1.1;
                proxy_set_header       Connection "";
                proxy_set_header       Authorization '';
                proxy_set_header       Host s3.us-east-1.amazonaws.com;
                proxy_hide_header      x-amz-id-2;
                proxy_hide_header      x-amz-request-id;
                proxy_hide_header      x-amz-meta-server-side-encryption;
                proxy_hide_header      x-amz-server-side-encryption;
                proxy_hide_header      Set-Cookie;
                proxy_ignore_headers   Set-Cookie;
                proxy_intercept_errors on;
                proxy_pass             https://s3.us-east-1.amazonaws.com;
        }

解决来自 Amazon S3 的 HTTP 5xx 错误 | AWS re:Post

问题现象是upstream_status 返回500、502、503,查阅官网文档发现是因为S3目录前缀是同一个,所有请求都到了一个前缀中,所以分成多个前缀后可以解决问题。

相关推荐
布鲁飞丝16 小时前
vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
运维·ansible
XR12345678816 小时前
企业全光网络架构选型技术白皮书:从物理层到运维层的全链路分析
运维·网络·架构
似的83517 小时前
一步一步学习使用FireMonkey动画() 使用TAnimator类创建动画
linux·学习·nginx
HiDev_17 小时前
【非标自动化】2、认识元器件(直线模组)
运维·自动化
龙仔72518 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪18 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘18 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
姜太小白19 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
fengyehongWorld19 小时前
Linux 终端快捷键
linux·运维
看昭奚恤哭20 小时前
平滑加权轮询负载均衡的底层逻辑
运维·负载均衡