2011-04-18 19 views
1

私は1つのホストされたルートを指す2つのドメインを持っています。htaccessを持つ1つのルートに複数のドメインがあります

firstdomainname.comとseconddomain.comは1つのルートを指します。

mymaindomain.com

mymaindomain.com/first-domain/

mymaindomain.com/second-domain/

のように私の既存のhtaccessのコード(動作しない)され


#two domains served from one root.. 
RewriteCond %{HTTP_HOST} firstdomainname.com 
RewriteCond %{REQUEST_URI} !^/first-domain 
RewriteRule ^(.*)$ first-domain/$1 [L] 

RewriteCond %{HTTP_HOST} seconddomain.com 
RewriteCond %{REQUEST_URI} !^second-domain 
RewriteRule ^(.*)$ second-domain/$1 [L] 

可能でしょうか?

答えて

0

これはあなたの問題を解決しますが、!^twoでスラッシュが!^/two

0

使用次のルールでなければなりません不足しているかどうかわからない:

RewriteCond %{HTTP_HOST} ^firstdomainname\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/first-domain/ [NC] 
RewriteRule ^(.*)$ /first-domain/$1 [L] 

RewriteCond %{HTTP_HOST} ^seconddomain\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/second-domain/ [NC] 
RewriteRule ^(.*)$ /second-domain/$1 [L] 
+0

残念ながら私はエラー404を受け取りました:( – Joshua

+0

'[L]'を '[R、L]'に置き換えて、あなたのブラウザに表示されているURLを確認してください。有効かどうか。 – anubhava

0

私は名前を「subsite1」と "を使用意味の明確さのために「firstdomain」および「seconddomain」の代わりに「subsite2」を使用します。

以下のこれらの書き換えルールは、正しいコンテンツを読み込み、サブサイトドメインを強制します。

# Force subsite domain for subsite directories 
RewriteCond %{REQUEST_URI} ^/?subsite1/?(.*)$ 
RewriteRule .* http://subsite1.com/%1 [R=302,QSA] 
RewriteCond %{REQUEST_URI} ^/?subsite2/?(.*)$ 
RewriteRule .* http://subsite2.com/%1 [R=302,QSA] 

# Load appropriate content 
RewriteCond %{HTTP_HOST} ^subsite1\.com$ 
RewriteCond %{REQUEST_URI} ^/?(.*)$ 
RewriteRule .* /subsite1/%1 [L] 
RewriteCond %{HTTP_HOST} ^subsite2\.com$ 
RewriteCond %{REQUEST_URI} ^/?(.*)$ 
RewriteRule .* /subsite2/%1 [L] 

ルールの最初のセットで書き換えがドメイン上の条件付きではありませんので、これらのルールは、あなたと違って、「subsite1.com/subsite1」のような冗長URLを防ぐことができます。

これをテストしたら、最初のルールセットのR = 302を必ずR = 301に変更してください。