4

LAMPサーバーを使用していますが、次のようなリクエストをリダイレクトする必要があります。

www.www.example.comからwww.example.comおよびその他のバリエーション(wwww.example.comなど)

.htaccessで実行できることは知っていますが、これらすべての可能性を表すために使用する必要がある正規表現がわかりません。

または、vhostsから来る、異なるアプローチがありますか?

4

3 に答える 3

5

好き:

# force www IN URL
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
# END force www IN URL

基本的に、www.example.com以外のものはすべてリダイレクト301されます

于 2009-06-23T17:16:07.897 に答える
2

「ワイルドカードサブドメイン」の実装については、この記事を参照してください。.htaccessとVhostsの変更の両方を実装する必要があります。

http://www.easymodrewrite.com/example-subdomains

「www.www」、「wwww。」、および上記の他の例のみに制限することに関心がある場合は、サーバー側のコーディングを使用して簡単に行うことができます(これにより、より多くの.htaccessコードを実装するよりも柔軟になります)。サブドメインが何であるかを検出し、必要な場所にリダイレクトするだけです。

于 2009-06-23T17:17:25.303 に答える
0

Apacheで名前ベースの仮想ホストを使用すると、次のことができます。

<VirtualHost *:80>
    ServerName example.com
    ServerAlias wwww.example.com www.www.example.com [space seperated list]

    Redirect / http://www.example.com/
</VirtualHost>

リダイレクトは、リダイレクトのタイプを指定するためのパラメーターを取ることができます。

于 2009-06-23T17:28:55.133 に答える