本地主机上使用不同端口的多个 http 服务器

本地主机上使用不同端口的多个 http 服务器

我在 https 上的网站上有这个 nginx 配置,其中 nginx 用作反向代理服务器:

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

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

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

    location / {
      proxy_redirect      http://localhost:4000 https://my_domain123.com;
      # ...........................

    }

我应该如何调整才能主持多种的网站不同的上的域名同一服务器? 我到底应该在配置中的什么位置插入该新网站的新配置?

或者我应该为其创建一个可用的/已启用的站点吗?但问题仍然存在:我该如何正确地组合两个或更多个配置——同一台服务器、多个域?

答案1

/etc/nginx/sites-available/newserver.conf通常,您会为新服务器创建一个新的配置文件,并从 链接它/etc/nginx/sites-enabled
要将 nginx 用作反向代理,请在 nginx ( ssl_certificate, ...) 中配置 SSL,并在您用于 localhost 的非 SSL 服务器的位置部分中配置SSL proxy_passproxy_redirect也是需要的,但这只会Location在非 SSL 本地服务器发送标头时修改标头。
您可以在以下位置找到一个示例文章

本地主机上使用不同端口的多个 http 服务器

server {
    server_name mydomain-01.com;

    location / {
      proxy_redirect http://localhost:8001 https://mydomain-01.com;
      ...
    }
}
server {
    server_name mydomain-02.com;

    location / {
      proxy_redirect http://localhost:8002 https://mydomain-02.com;
      ...
    }
}

本地主机上使用基于主机名的站点的单个 http 服务器

server {
    server_name mydomain-01.com;

    location / {
      proxy_redirect http://s1.localdomain:4000 https://mydomain-01.com;
      ...
    }
}
server {
    server_name mydomain-02.com;

    location / {
      proxy_redirect http://s2.localdomain:4000 https://mydomain-02.com;
      ...
    }
}

相关内容