24

私はこのルールを持っています:

RewriteRule ^(about|installation|mypages|privacy|terms)(/)*$    
/index.php?kind=portal&id=1&page=$1&%{QUERY_STRING} [L]

www.domain.comたとえば、特定のドメインでのみ機能するように変更するにはどうすればよいですか?

4

1 に答える 1

48

書き換え条件が必要です:

RewriteCond %{HTTP_HOST} ^www.domain.com$

書き換えルールの前。

ルールの前にいくつかの書き換え条件をリストする場合、RewriteRuleを実行するには、それらすべてが一致する必要があります。次に例を示します。

RewriteCond %{HTTP_HOST} ^www.domain.com$
RewriteCond %{HTTP_HOST} ^www.domain2.com$

HTTP_HOSTに両方の値を同時に含めることはできないため、これはもちろん機能しません。

次に、[OR]修飾子を使用する必要があります。

RewriteCond %{HTTP_HOST} ^www.domain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.domain2.com$

上記の条件のいずれかが一致した場合にRewriteRuleが実行されるようにします。

詳細については、 http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritecondを参照してください。

于 2012-05-28T13:40:47.757 に答える