2011-01-26 3 views
3

セカンダリドメインをドキュメントルートのサブフォルダにマッピングします。mod_rewriteを使用してセカンダリドメインをサブディレクトリにマッピングします。

たとえば、ドメインwww.example.comへのリクエストがDocumentTootにマップされている場合、www.exampletwo.comへのリクエストは/sites/files/に行きます。

​​からwww.exampletwo.com/sites/files/index.htmlへのリダイレクトは、まだ​​になりますが、リダイレクトはできません。何か案は?

答えて

5

RewriteCond %{HTTP_HOST} ^(www\.)?exampletwo\.com [NC] 
RewriteRule ^/(.*) /sites/files/$1 [L] 
+0

うーん、まだダイスはありません。私は上記を試してみて、exampletwo.com/にアクセスしてテストしましたが、インデックスページが/sites/files/index.htmlにあり、書き換えられていないので、404NotFoundを取得します – WilHall

+0

ああ、 wwwはオプションであった。更新された正規表現もどちらかを捕捉するはずです。 –

+0

リライトエンジンがオンになっていることを確認してください。そうでなければ、ディレクティブは無視されます。 'RewriteEngine on' [RewriteEngineディレクティブ](http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriteengine) – cherdt

1
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com [NC] 
RewriteRule ^/(.*)   http://www.exampletwo.com/$1 [L,R] 

RewriteCond %{HTTP_HOST} ^(www\.)?exampletwo\.com [NC] 
RewriteRule ^/(.*)   http://www.exampletwo.com/sites/files/$1 [L,P] 

Pフラグはプロキシモジュールを使用しているため、URLはクライアント上で変更されません(リダイレクトされません)。私はあなたがこのような何かを探していると信じてい

+0

ありがとうございましたが、それは私が期待通りに機能していないようです。誰かがexample.com/にアクセスしたとき、私はそれらをexampletwo.com/sites/files/にリダイレクトしますが、mod_rewriteはexampletwo.com/だけを表示するようにURLを書き換えます。 – WilHall

+0

が変更されました。まず例をexampletwoにリダイレクトする必要があります。次に、/ site/filesをマスクする必要があります。 – Spliffster

関連する問題