Nginx路由到服务器的路径

Ber*_*ard 4 nginx

我有几个网站.每个站点都有自己的"服务器"部分,其server_name类似于此

server {
   ...
   server_name siteA.example.com;
   root /var/www/siteA;
   ...
}
Run Code Online (Sandbox Code Playgroud)

因此,我可以使用网址http://siteA.example.com打开网站

但是,我还需要使用网址http://example.com/siteA来启动网站. 如何做到这一点?

Day*_*ayo 17

以下两个选项可添加到您的配置中......

选项1:

server {
    ...
    server_name example.com;
    ...
    location /siteA {
        root /var/www/siteA;
        ...
    }
    location /siteB {
        root /var/www/siteB;
        ...
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

选项2:

server {
    ...
    server_name example.com;
    ...
    location /siteA {
        return       301 http://siteA.example.com$request_uri;
    }
    location /siteB {
        return       301 http://siteB.example.com$request_uri;
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

第一个选项仅example.com/siteA在第二个选项重定向时提供siteA.example.com