2016-10-26 5 views
0

Apacheの書き換えルールを使用して、ドメイン名をサーバのサブディレクトリにリダイレクトしたいのですが.htaccessファイルはどのように変更できますか?私はいくつかのクロスドメインの問題ためのhttpd-vhosts.confを変更することができませんでした/ Bドメイン名をサーバのサブディレクトリにリダイレクトしたい

にバインド/

www.b.comにバインド

www.a.com。

/dには.htaccessファイルがありますが、削除した場合は404エラーが表示されます。そうしないと、ERR_TOO_MANY_REDIRECTSが検出されます。

.htaccessファイル:

<IfModule mod_rewrite.c> 
 
    Options +FollowSymlinks 
 
    RewriteEngine On 
 
    RewriteCond %{REQUEST_FILENAME} !-d 
 
    RewriteCond %{REQUEST_FILENAME} !-f 
 
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 
 
</IfModule>


答えて

0

ここでは、次のとおりです、

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.(.*)\.com$ 
RewriteRule ^(.*)$ /full/path/to/document/root/%1/$1 [END] 

(Webサイトのルートに.htaccessとして保存)ウェブサイトのルートでありますDocumentRootはあなたのapache2/vに定義されていますホスト構成。 あなたはDocumentRootはこれは、Apache 2.4、NOT 2.2上で動作します/

URLパスにシステムの完全なパスで、www.a.comは/aにリダイレクトしたいと述べました。最初のコメントへ

返信:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.(a|b|c).com$ 
RewriteRule ^(.*)$ /full/path/to/document/root/d/$1 [END] 
RewriteCond %{HTTP_HOST} ^www.(.*)\.com$ 
RewriteRule ^(.*)$ /full/path/to/document/root/%1/$1 [END] 
+0

はありがとうございます。そして、もしa.b.cが/ dにリダイレクトしたいのであれば、どのようにルールを編集するのですか? – autumnfall

+0

@autumnfall私の答えに付け加えられました。待って、あなたのa.b.cはドメイン名になっていますか? 'RewriteCond%{HTTP_HOST}^a.b.c $' –

+0

/dには.htaccessファイルがあります。削除した場合は404エラーが発生します。そうしないと、ERR_TOO_MANY_REDIRECTSが検出されます。 – autumnfall

関連する問題