Linux

將我的 http 請求從我的 ip 轉發到另一台伺服器

  • November 20, 2011

我需要將任何來自舊伺服器 IP 的 http 請求轉發到我的新 IP。

我遷移了伺服器,有幾個域的 TTL 很高,我無法更新。是否可以從一台執行 centos/whm/php/apache 2+ 的伺服器獲取所有 HTTP 請求並將它們轉發到新 IP?

由於我有數百個域,我更喜歡涉及在 linux 機器上執行應用程序的解決方案,該應用程序將自動將請求推送到新機器。

想法?

我嘗試過使用 IP 表並使用預路由鏈轉發所有傳入連接,但似乎這只適用於轉發到內部 IP 地址,而新 IP 是外部 IP。

基本上你需要設置nginx你的舊IP。您應該更改其配置以使其充當反向代理,如下所示:

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;
       }
}

引用自:https://serverfault.com/questions/330638