将我的 http 请求从我的 ip 转发到另一个服务器

将我的 http 请求从我的 ip 转发到另一个服务器

我需要将任何 http 请求从我的旧服务器 IP 转发到我的新 IP。

我迁移了服务器,有几个域的 TTL 很高,我无法更新。是否可以从运行 centos/whm/php/apache 2+ 的一台服务器接收所有 HTTP 请求并将其转发到新 IP?

因为我有数百个域,所以我更倾向于一种解决方案,即在 Linux 机器上运行一个应用程序,该应用程序会自动将请求推送到新的机器。

有什么想法吗?

我尝试使用 IP 表并使用预路由链转发所有传入连接,但这似乎仅适用于转发到内部 IP 地址,而新 IP 是外部的。

答案1

基本上,您需要在旧 IP 上进行设置nginx。并且您应该更改其配置以使其充当反向代理,如下所示:

server {
        listen   80 default;
        server_name  localhost;

        access_log  /var/log/nginx/localhost.access.log;

        location / {
                proxy_pass         http://your_new_ip_here:80/;
                proxy_redirect     off;
                proxy_set_header   Host             $host;
                proxy_set_header   X-Real-IP        $remote_addr;
                proxy_set_header   X-Forwarded-For  $remote_addr;

                client_max_body_size       10m;
                client_body_buffer_size    128k;

                proxy_connect_timeout      90;
                proxy_send_timeout         180;
                proxy_read_timeout         180;

                charset utf-8;
        }
}

相关内容