
server1.com/service1
すべてのシステム要求をリダイレクトできるかどうかを尋ねていますserver2.com/service1
。
これが私の状況です。私のメインサーバーにWebアプリケーションがあります(mainserver.com)、それには3つのサーバーと一連の休憩サービスがあります。たとえば、次のようになります。
mainserver.com -> web application
serviceserver1.com/createUser
serviceserver2.com/createUser
serviceserver3.com/createUser
サービスサーバーがダウンしていることは非常に一般的で、サービスURLを別のサーバーに変更してアプリケーションを再起動する必要があります(アプリケーションの動作を変更することはできません)。
まあ、私はホストリダイレクトのようなものを考えていますが、ホストレベルではなくURLレベルでのみ可能です。
答え1
Nginxを使用してこれを行うことができます。まず、以下を設定してアップロードする必要があります。
upstream web {
server serviceserver1.com
server serviceserver2.com
server serviceserver3.com
}
だからあなたが探しているのは:proxy_next_upstream
そしてですproxy_connect_timeout
。
この試み:
location / {
proxy_pass $scheme://web;
proxy_redirect off;
proxy_next_upstream error timeout invalid_header http_500;
proxy_connect_timeout 2;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
}