0

私のサーバーではワイルドカード サブドメインが完全に機能していますが、移植性を高めるために .htaccess コードを最適化したいと考えています。どうすればいいのかわからない。

特定のドメイン名と拡張子(以下のコードの DOMAIN と .com) を正規表現一致に置き換えて、他のドメインにワイルドカード コードを使用するときに簡単に移植できるようにしたいと考えています。したがって、これは domain.com および domain2.net の代わりにドロップする必要があります。私が使用するコードは次のとおりです。

# Wildcard Subdomain
RewriteCond %{HTTP_HOST} ^(www.)?([^.]+)\.DOMAIN\.com [NC]
RewriteCond %2 !^www$ [NC]
RewriteRule ^(.*)$ http://DOMAIN.com/$1?a=%2 [R=301,QSA,L]

www の例外を追加したため、通常のバージョンとは少し異なります。+ サブドメイン条件。多くの場合、人々が www.sub.domain.com を入力すると、サーバーが壊れます。だから私はwwwをチェックします。リダイレクトする前に削除してください。

ご協力いただきありがとうございます!

4

1 に答える 1

0

あなたが現在持っている方法:

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

ドメインから www を取り除くだけの場合:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www)\.(.*)\.(.*)\.(.*) [NC]
RewriteRule ^(.*)$ http://%2.%3.%4/$1 [R=301,QSA,L]
于 2010-11-20T19:40:45.533 に答える