0

次のタイプのパスとサブドメインを持つページが多数あります。

place1.maindomain.com/travel/place1/go/
place2.maindomain.com/travel/place2/go/

place1.maindomain.com/travel/place1/widgets/
place2.maindomain.com/travel/place2/widgets/

これらすべてのドメインを、ワイルドカードを使用してサブドメインではなく www に自動的にリダイレクトするようにしたいので、次のように表示されます。

www.maindomain.com/travel/place1/go/
www.maindomain.com/travel/place2/go/

www.maindomain.com/travel/place1/widgets/
www.maindomain.com/travel/place2/widgets/

私のプログラマーは試してみましたが、できないと言っています。このタイプのサブドメイン ワイルドカード リダイレクトができない理由はありますか?

4

1 に答える 1

0

リダイレクトは簡単です。次のようなことをするのを妨げているのは何ですか:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?maindomain\.com$ [NC]
RewriteRule ^ http://www.maindomain.com%{REQUEST_URI} [L,R=301]

「place1」部分がパスの「place1」部分と一致する必要があることを意味する場合は、次のことができます。

RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?maindomain\.com$ [NC]
RewriteCond %{REQUEST_URI} ^/[^/]+/([^/]+)/
RewriteCond %{HTTP_HOST}|%1 ^([^.]+)\.maindomain\.com|\1$
RewriteRule ^ http://www.maindomain.com%{REQUEST_URI} [L,R=301]
于 2013-11-07T08:34:01.183 に答える