通配符子域名内部 URL 重写

通配符子域名内部 URL 重写

我正在尝试实现类似 GitHub Pages 的 URL。每当用户访问username.example.com内部时,它都会响应localhost:80/username

我举了一些例子,这样可以使问题更容易理解。我正在尝试实现它

每当用户访问

user1.example.com  -> localhost/user1
user2.example.com  -> localhost/user2

user1.example.com/about  -> localhost/user1/about
user2.example.com/about/somemore  -> localhost/user2/about/somemore

我希望大家清楚我的问题。

我正在使用 nginx,并且已为子域名设置了通配符。

目前,对于任何子域名,我的网站都显示 index.html 页面

答案1

server {
    server_name     ~^(?<subdomain>\w+)\.example\.com$;

    location / {
            proxy_pass https://example.com/$subdomain$request_uri ;
    }
}

相关内容