如何将nginx配置为对2个站点使用具有相同服务器名称的相同端口

问题描述 投票:0回答:1

我在一台debian机器上有2个站点。当前,一个正在端口443/80上运行,另一个正在端口8090上运行。我的要求是在443上同时运行两个站点,如果我输入site.com/1,则应该重定向到站点1,如果我输入site。 com / 2-应该到达站点2。如何使用nginx实现此目标?

我尝试了代理,但问题是-如果我为两个监听使用相同的端口,则忽略声明已在使用中。

nginx nginx-location nginx-config
1个回答
0
投票

根据您的要求,您要运行两个具有相同域的站点。可以说

example.com/site1
example.com/site2

为此,您需要按照以下模板修改nginx配置文件打开与example.com域相关联的nginx配置文件,并添加以下代码。

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

    server {
      listen 443 ssl http2;
      server_name example.com; 
      modsecurity_transaction_id "example.com-$request_id"; 
      access_log           /var/log/nginx/access.log; 
      error_log            /var/log/nginx/error.log; 
      include              /etc/nginx/default.d/example.com/*.conf;
location /site1/ {
  documentroot path/to/html/folder
}
location /site2/ {
  documentroot path/to/html/folder
}
}
© www.soinside.com 2019 - 2024. All rights reserved.