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目录前缀是同一个,所有请求都到了一个前缀中,所以分成多个前缀后可以解决问题。

相关推荐
豆瓣鸡2 分钟前
Docker快速入门
运维·docker·容器
Shadow(⊙o⊙)3 分钟前
进程间通信0.0-pipe()匿名管道,详细分析进程池调度队列执行逻辑,进程池模拟实现。
linux·运维·服务器·开发语言·c++
CQU_JIAKE11 分钟前
6.6aaaaaa
linux·运维·服务器
VX_1826 分钟前
Docker镜像直接部署JumpServer
运维·docker·容器
丑过三八线27 分钟前
Umi 配置文件 .umirc.ts 详解
linux·运维·ubuntu·react.js
咖啡星人k27 分钟前
用 MonkeyCode 构建全栈应用:从需求到部署的AI自动化实践
运维·人工智能·自动化
团象科技1 小时前
中小出海团队运维观察:WordPress站点境外云环境搭建实操路径梳理
大数据·运维·人工智能
HoneyMoose1 小时前
Jenkins Firefox 登录提示错误
运维·jenkins
江湖有缘1 小时前
Docker部署Beaver Habit Tracker习惯追踪应用
运维·docker·容器
小此方1 小时前
Re:Linux系统篇(二十七)进程篇·十二:从零构建属于你的自定义 Shell 解释器
linux·运维·服务器