古いサーバーは廃止されますが、新しいサーバーにリダイレクトするために、そのサーバーを指していた Web アドレスが必要です。

古いサーバーは廃止されますが、新しいサーバーにリダイレクトするために、そのサーバーを指していた Web アドレスが必要です。

私は毎日何百人ものユーザーがアクセスするイントラネットサイトを引き継ぎました。彼らは皆、ページにアクセスする方法を知っています。http://古いサーバー名/サイト楽しんでください。サイトは新しいサーバーに移行し、すべて順調です。問題は、古いサーバーが廃止されることになり、それをできるだけ早く実行したいということです。サイトを構築して運営していた人が 3 月にこれを完了する予定でしたが、会社を辞めるまで延期してしまい、今では管理者が期限のせいで私に執拗に迫っています。

これが私のジレンマです。古いサーバーをシャットダウンすると、http://古いサーバー名/サイト(誰もがブックマークし、10年以上運営され、あらゆる種類のドキュメントやSOPSに記載されているサイト)は、もはや機能しません。http://新しいサーバー名/サイト同じページにアクセスします。管理者にこれは理想からは程遠いと伝え、DNS の調整を依頼したところ、シャットダウンされました。

彼らは cname を望んでおらず、新しいサーバーが展開されたら古いサーバーをそのままにしておきたいとも思っておらず、これは 3 月に完了する予定だったため、あまり気にしていません。

今週になって初めてこのことを知りましたが、時間を遡ることはできません。cname がない場合、警告ページとリダイレクトが表示された古いサーバーがまだ稼働している場合、またはタイムマシンを使用している場合、どのような選択肢がありますか?

答え1

良い解決策

正しい解決策は CNAME を取得することです。これは DNS が設計されている目的です。この場合、ドーナツを買ったり、電話で怒鳴ったり、マネージャーに相談したりすることはすべて適切な行動です。

悪い解決策

これが選択肢にない場合(受け入れられるかどうかはわかりませんが、先に進むつもりです)。私の唯一の戦略は、ユーザーのホスト ファイルにエントリを追加するスクリプトを作成することです。これは基本的に DNS サーバーを上書きします。いずれかのマシンに対して管理者権限を持っている場合は、ホスト ファイルに上書きまたは追加するだけで済みます。ホスト ファイルに関する簡単な情報は、次の場所にあります。http://www.howtogeek.com/howto/27350/beginner-geek-how-to-edit-your-hosts-file/

ユーザーのコンピューターに対する管理者権限がない場合は、古いサーバーのサイトのホームページをダウンロード リンクとスクリプトを実行する手順に置き換えます。すでにカウント ソリューションをお持ちのようですが、そうでない場合は、古い Web サイトにカウンターを追加して、マシンがシャットダウンした場合に影響を受けるユーザーの数を確認し、さらに重要なことに、上司に伝えられるようにします。また、古いサーバー名が新しいサーバー名に置き換えられたすべてのドキュメントを入手するようにします。

これにより、サポートに多大な作業が発生することになります。

答え2

DNSの伝播を待つ間、転送トラフィックを使用することができます。

古いサーバーで実行

echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination IPNewServer
iptables -t nat -A POSTROUTING -p tcp -d IPNewServer --dport 80 -j MASQUERADE

しかし最終的な解決策は、DNSを変更し、古いサーバーで301 Moved Permanentlyを使用することです。

.htaccess: 編集

RewriteEngine on
RewriteCond %{HTTP_HOST} ^oldservername/site  [NC,OR]
RewriteCond %{HTTP_HOST} ^www.oldservername/site [NC]
RewriteRule ^(.*)$ http://newservername/site/$1 [L,R=301,NC]

そしてあなたの足があなたのひげに触れるまで待って、すべての訪問者がブックマークを変更していることを知らせます

関連情報