2011-12-23 12 views
2

こんにちは!ワイルドカードサブドメインは削除しますが、既存のものは削除しないでください。

私はワイルドカードサブドメイン用の.htaccessファイルを設定しようとしていますが、実際にどのように行うのかわかりません。

私は完璧に働いているの別名として「ドメイン1」に指して「ドメイン2」を、持っている、これは私が使用しているコードです:Optimize htaccess Wildcard Subdomain Code

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(www)\.(.*)\.(.*)\.(.*) [NC] 
RewriteRule ^(.*)$ http://%2.%3.%4/$1 [R=301,QSA,L] 

RewriteCond %{HTTP_HOST} ^(.*\.?)domain2.co\.cc$ [NC] 
RewriteRule (.*) http://%1domain1.co.cc/$1 [R=301,L] 

を私はWWWがところでここにリダイレクトしました

今、私が欲しいものは削除取得するために、すべての非存在のサブドメインと滞在する「blog.domain1.co.cc」のように(存在するものである。

私は誰かがこれで私を助けることができると思います。ありがとう!

+0

を試してみては何WOUのいくつかの例を例えばどんなドメインが存在するか定義します。 –

+0

私は現在2つのドメインを持っています:discussions.domain1.co.ccとwww.domain1.co.cc ワイルドカードのサブドメイン(asdf.domain1.co.ccなど)はリダイレクトする必要がありますwww.domain1.co.ccに、既存のサブドメイン(discussions.domain1.co.ccなど)はこのルールから除外する必要があります。 例: 'asdf.domain1.co.cc/article-2 - > www.domain1.co.cc/article-2' ' discussions.domain1.co.cc/thread-7 - >議論。 domain1.co.cc/thread-7 ' – reitermarkus

答えて

1
RewriteEngine On 

#no longer needed 
#RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] 
#RewriteRule ^(.*)$ http://%1/$1 [R=301,L] 

#don't redirect blog.example.com, forum.example.com and example.com 
RewriteCond %{HTTP_HOST} ^((blog|forum)\.)?example\.com$ 
RewriteRule .* - [L] 

#redirect the rest (including www.) to example.com 
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L] 
+0

残念なことに、うまくいきません。私はちょうど昨日、別のホストに自分のサイトを移動した、多分それのためです。 ドメインエイリアスでも動作していません。 最初に教えてもらえますか? > forum.new.com /スレッド/ 12038213' I - 'forum.old.com/thread/12038213を: は、私は基本的には他のドメインにサブドメインやサブディレクトリをリダイレクトするように、すべてがちょうどそのよう、エイリアスたいです両方を行うスレッドが見つかりませんでした。 – reitermarkus

+0

新しい質問をしてください。また、このコメントで提供する情報よりも多くの情報が必要です。 – Gerben

+0

ありがとう、ありがとう。しかし、緊急ではない。私は来年、おそらく尋ねます。ハッピーホリデー! =) – reitermarkus

0

htaccessファイルに以下を追加してみてください。次の質問

はちょうどそのように、他のドメインにサブドメインとサブディレクトリをリダイレクトするために

#if these lines already exist, skip them 
RewriteEngine On 
RewriteBase/

#if its not www or discussions subdomain 
RewriteCond %{HTTP_HOST} !^(www|discussions)\.domain1\.co\.cc$ [NC] 
#redirect to www domain 
RewriteRule .* http://www.domain1.co.cc%{REQUEST_URI} [R=301,L] 

:forum.old.com/thread/12038213 - > forum.new.com/thread/ 12038213

あなたはより多くの詳細を提供することができます

RewriteEngine On 
RewriteBase/

#if domain is old.com 
RewriteCond %{HTTP_HOST} ^(.+)\.old\.com$ [NC] 
#redirect to new.com 
RewriteRule .* http://%1.new.com%{REQUEST_URI} [L,R=301] 
関連する問題