【发布时间】:2017-05-05 16:12:50
【问题描述】:
我已经在我的服务器中成功安装了Sentry,我想通过 HTTPS 确保它的安全。为此,我已经配置了 NGINX,但是,我不断收到“页面未正确重定向”错误。我已经尝试过哨兵提供的官方指南,但到目前为止还没有运气。这是我的 NGINX 配置:
server {
listen 443;
ssl on;
server_name sentry.test.co;
ssl_certificate /etc/letsencrypt/live/sentry.test.co/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/sentry.test.co/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_intercept_errors on;
proxy_pass http://localhost:9000;
}
}
server {
listen 80;
server_name sentry.test.co;
return 301 https://sentry.test.co$request_uri;
}
我错过了什么?
【问题讨论】:
-
我建议将您对该主机的所有侦听放入同一个服务器块中,然后使用
if ($scheme = http) { return 301 https://$host$request_uri; }之类的东西(在您的“位置”指令之前)。可能不会改变任何东西,但值得一试。 -
重定向似乎源自
Sentry本身。您可能需要添加一个proxy_set_header Host $host;语句,以便它知道它的真实主机名。
标签: redirect nginx https sentry