Nginx将HTTP转发到https时使用错误的server_name

时间:2019-07-19 23:54:43

标签: nginx nginx-reverse-proxy

这个想法是将所有http转发到https请求。代码很简单,服务器上仅托管一个Web应用程序。我有这样的代码。

server {
  listen hostname.domain:80;
  server_name hostname.domain;
  returen 301 https://$host$request_uri;
}

server{
  listen hostname.domain:443 ssl;
  server_name hostname.domain;
  ssl on;

  #Other SSL settings

  location/ {
    proxy_pass  http://127.0.0.1:9999;
    proxy_redirect http://127.0.0.1:9999 https://hostname.domain;
    proxy_set_header Host $host;
  }

检查Chrome的网络在获取代码302是“ https://hostname/”而不是hostname.domain.conf的server_name中指定的“ https://hostname.domain”时显示新的请求URL。

对此有何解释?我尝试了在两个服务器块中将“ hostname”,“ hostname.domain”的其他组合作为listen和server_name的值。没有一个。

0 个答案:

没有答案