Nginx 三级域名配置

Nginx 三级域名配置

我知道如何为具有 htts 的网站创建 nginx 配置,以便它重定向到 https 域:

  server {
      listen 80 default_server;
      listen [::]:80 default_server;
      server_name my_domain.com www.my_domain.com;
      return 301 https://$server_name$request_uri;
  }

  server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name localhost www.my_domain.com;
    return 301 https://my_domain.com$request_uri;
  }

  server {
      listen 443 ssl default_server;
      listen [::]:443 ssl default_server;
      server_name my_domain.com;
      # ................

现在,除了我已经拥有的主要域名“my_domain.com”之外,我还在设置域名“staging”。即“staging.my_domain.com”。我应该如何更改上述“staging.my_domain.com”的配置?我不知道。我是否应该完全删除第一部分,因为不可能有 www.staging.my_domain.com

如果不是,那么我的配置究竟应该是什么样的?

答案1

只需添加子域名即可。没有理由不能使用 www.abcdefgexample.com。不过,通常不会在子域名前面添加 www。

server {
  listen 443 ssl default_server;
  listen [::]:443 ssl default_server;
  server_name staging.example.com;
  # locations etc
}

如果愿意,请添加端口 80 服务器进行转发。

server {
  listen 80;
  listen [::]:80 default_server;
  server_name staging.example.com;
  return 301 https://staging.example.com$request_uri;
}

请注意,根据标准,“example.com”用于示例。

相关内容