nginx:基于域重定向到两个不同的服务器

nginx: redirect to two different servers based on domain

假设我有一个域:mike.com。

我想让 mike.comwww.mike.com 访问我的 nginx 服务器并获得位于 123.1.1.1 的页面。

我想让 api.mike.com 由位于 123.2.2.2 的服务器提供服务。

也许我的 google-fu 以史诗般的方式让我失望,但我将如何安排这样的设置?

创建 2 个服务器块并 proxy_pass 到适当的后端服务器。

试试这个例子:

server {
    listen              80;
    server_name         mike.com www.mike.com;

    location / {
       proxy_pass http://123.1.1.1:8080;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header Host $host;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
server {
    listen              80;
    server_name         api.mike.com;

    location / {
       proxy_pass http://123.2.2.2:8080;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header Host $host;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}