【问题标题】:Nginx redirect request to HTTPS domainNginx 重定向请求到 HTTPS 域
【发布时间】: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


【解决方案1】:

当“灵活”的 Cloudflare 向您的站点发出请求时:80 并获得重定向 https

【讨论】:

    【解决方案2】:

    这些问题通常与 Cloudflare 的灵活 SSL 服务的用户有关。您可以通过登录 Cloudflare 仪表板并单击“加密”选项卡,然后前往 SSL 设置来检查您是在完全模式还是灵活模式下使用 Cloudflare 的 SSL 服务:

    如果您使用 Cloudflare 的灵活 SSL 服务并看到混合内容问题或重定向循环错误,请首先确保您的源站没有安装 SSL 证书。如果有,那么您不应使用灵活 SSL,而应将其设置为 Full 或 Full(Strict)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-27
      • 1970-01-01
      • 2021-03-26
      • 1970-01-01
      • 1970-01-01
      • 2016-05-21
      • 2021-03-25
      • 2015-08-26
      相关资源
      最近更新 更多