2

ドメインのリクエストを受け入れる Apache HTTP サーバーを実行しています。www.mydomain.com としましょう。このドメインで実行されているいくつかのサイトがあり、使用する URL に応じてユーザーを転送する仮想ホストをそれぞれに設定しています。例としては、a.mydomain.com、b.mydomain.com などがあります。100 を超える仮想ホストがあることを考えると、これがこの目標を達成する最善の方法ではない可能性があることは承知していますが、これは私が継承したものです。 . 要するに.. 動作します。今私の問題に進みます。

私は最近、ドメインの下で実行されているほとんどのサイトをシャットダウンする任務を負っています。閉鎖されたサイトは、新しいドメイン (www.mynewdomain.com) の 1 つのページにリダイレクトされました。私が行ったことは、各仮想ホストを次のように変更したことです。

<VirtualHost *:80>
  ServerName a.mydomain.com
  RewriteEngine On
  RewriteRule  ^/$ /SiteA [PT]
</VirtualHost>

これに:

<VirtualHost *:80>
  ServerName a.mydomain.com
  Redirect permanent / http://www.mynewdomain.com/replacement
</VirtualHost>

これで、すべてが同じ場所にリダイレクトされる 100 個のホストのリストができました。私が知る必要があるのは、*.mydomain.com のすべてのサイトを、特定のサイトを除いて新しいページにリダイレクトするようにシステムに指示する方法があるかどうかです。したがって、次のようなエントリがあります。

<VirtualHost *:80>
  ServerName *.mydomain.com
  Redirect permanent / http://www.mynewdomain.com/replacement
</VirtualHost>

<VirtualHost *:80>
  ServerName h.mydomain.com
  RewriteEngine On
  RewriteRule  ^/$ /SiteH [PT]
</VirtualHost>

<VirtualHost *:80>
  ServerName v.mydomain.com
    RewriteEngine On
    RewriteRule  ^/$ /SiteV [PT]
</VirtualHost>

つまり、 「h.mydomain.com」と「v.mydomain.com」を除いて、表示されるすべての URL は「http://www.mynewdomain.com/replacement 」に移動します。"h" と "v" の仮想ホストは、引き続き動作する必要があるそれぞれの RewriteRules があるため、そのままである必要があります (追加の rewriterules は私の例には見られません)。

助けてくれてありがとう!

4

0 に答える 0