从一个 nginx 重定向到另一个

fl0*_*00r 10 nginx redirect

我有两台带有 NGINX 的服务器(A 和 B)。服务器 A 正在为旧站点提供服务,而服务器 B 正在为新站点提供服务。我已经更新了我的 DNS,但速度很慢:在我的办公室里,我仍然看到我的旧网站:

子域.site.com

如何将来自服务器 A 的针对此特定子域的所有请求重定向到服务器 B?

现在他们都在 NGINX 中处理了这个:

server {
  listen 80;
  server_name subdomain.site.ru;
  root /var/www/subdomain/public;
  passenger_enabled on;
}
Run Code Online (Sandbox Code Playgroud)

cjc*_*cjc 15

由于它们都使用相同的 server_name,因此您无法进行简单的重定向。

不过,您可能可以在旧服务器上按照以下内容进行某种代理:

upstream newserver {
  server 172.16.0.1:80;  # this is new server, by IP address
}

server {
  listen 80;
  server_name subdomain.site.ru;
  location / {
    proxy_set_header Host $host;
    proxy_pass http://newserver;
  }
}
Run Code Online (Sandbox Code Playgroud)

因此,基本上,配置旧服务器,以便它将所有请求传递到新服务器。当然,为 client_max_body_size 和所有这些设置您需要的任何配置。