有没有办法通过我的子域通过nginx反向代理访问AWS网络控制台?
这是nginx配置一直在使用:
server {
listen localhost:443 ssl;
server_name aws1.subdomain.com;
include snippets/proxy_ssl.conf;
location / {
proxy_pass https://console.aws.amazon.com/;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_read_timeout 86400;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_hide_header X-Frame-Options;
}
}
上面的配置抛出:
网络错误: 400 错误请求
并在我尝试在浏览器中访问 https://aws1.subdomain.com 时显示亚马逊的默认 400 错误请求页面。
我在nginx.conf中使用以下行来工作。您还可以根据需要为 http 身份验证添加行,具体取决于您的配置。
location = / { rewrite ^ /_plugin/kibana/ redirect; }
location / {
proxy_pass https://<es-domain-url>.es.amazonaws.com;
proxy_http_version 1.1;
proxy_set_header Authorization "";
proxy_hide_header Authorization;
proxy_set_header X-Forwarded-Proto $scheme;
}