Regex nginx默认重定向和自定义重定向

Regex nginx默认重定向和自定义重定向,regex,redirect,nginx,routes,Regex,Redirect,Nginx,Routes,操作系统Debian8; 我正在尝试写nginx配置,会发生什么 1) 将所有请求从根域.a重定向到域.b 2) 将路由为domain.a/$1的所有请求重定向到domain.a/api/route/$1 我能够完成2),但当我在浏览器中键入domain.a时,它会显示nginx默认页面。我希望将其转发到域b server { listen 80; server_name domain.a; #should redirect all other requests to d

操作系统Debian8; 我正在尝试写nginx配置,会发生什么 1) 将所有请求从根域.a重定向到域.b 2) 将路由为domain.a/$1的所有请求重定向到domain.a/api/route/$1

我能够完成2),但当我在浏览器中键入domain.a时,它会显示nginx默认页面。我希望将其转发到域b

server {

    listen 80;

    server_name domain.a; 

#should redirect all other requests to domain.b , but it not happens
    return 301 domain.b;

# correctly redirects from domain.a to domain.b api
    location ~/(.*)$ {
        return 301 https://domain.b/api/route/$1;
    }

}

您可以使用
位置=/
语法隔离
/
URI。这可能适用于您:

location = / {
    return 301 https://domain.b/;
}
location / {
    return 301 https://domain.b/api/route$uri;
}

有关详细信息,请参阅。

非常感谢!作品