0

このテーマに基づいて複数のスレッドを読みましたが、どのルールも機能していないので、何か間違ったことをしていると確信しています.

/var/www に次の構造があります

main domain folders that redirects to domain.com
folder1 that redirects to domain1.com
folder2 that redirects to domain2.com

folder2 内には、さらに 3 つのサブディレクトリがあります

folder2/subdirectory1
folder2/subdirectory2
folder2/subdirectory3

これらは次の場所にリダイレクトする必要があります。

www.domain2.com/subdirectory1
www.domain2.com/subdirectory2
www.domain2.com/subdirectory3

しかし、その代わりに、URLにfolder2も表示されるため、リストされています

www.domain2.com/folder2/subdirectory1
www.domain2.com/folder2/subdirectory2
www.domain2.com/folder2/subdirectory3

2 つの .htaccess があります。1 つはルート フォルダー内に、もう 1 つは folder2 内にあります。

ルートフォルダからのhtaccess

Options +FollowSymLinks 
RewriteEngine On
RewriteBase /

ReWriteCond %{HTTP_HOST} domain1.com
ReWriteCond %{REQUEST_URI} !folder1/
ReWriteRule ^(.*)$ folder1/$1 [L] 

ReWriteCond %{HTTP_HOST} domain2.com
ReWriteCond %{REQUEST_URI} !folder2/
ReWriteRule ^(.*)$ folder2/$1 [L]

folder2 からの htaccess

RewriteEngine On
RewriteBase / 

ReWriteCond %{HTTP_HOST} domain2.com/subdirectory1
ReWriteCond %{REQUEST_URI} !subdirectory1/
ReWriteRule ^(.*)$ subdirectory1/$1 [L] 

ReWriteCond %{HTTP_HOST} domain2.com/subdirectory2
ReWriteCond %{REQUEST_URI} !subdirectory2/
ReWriteRule ^(.*)$ subdirectory2/$1 [L] 

ReWriteCond %{HTTP_HOST} domain2.com/subdirectory3
ReWriteCond %{REQUEST_URI} !subdirectory3/
ReWriteRule ^(.*)$ subdirectory3/$1 [L]

うまくいけば、私は最終的にこの問題を解決することができます

4

1 に答える 1

0

[R]folder2へのリダイレクトタグを使用する必要があると思います.htaccess RewriteRule

こちらです:

RewriteEngine On
RewriteBase / 

ReWriteCond %{HTTP_HOST} domain2.com/subdirectory1
ReWriteCond %{REQUEST_URI} !subdirectory1/
ReWriteRule ^(.*)$ subdirectory1/$1 [R] 

ReWriteCond %{HTTP_HOST} domain2.com/subdirectory2
ReWriteCond %{REQUEST_URI} !subdirectory2/
ReWriteRule ^(.*)$ subdirectory2/$1 [R] 

ReWriteCond %{HTTP_HOST} domain2.com/subdirectory3
ReWriteCond %{REQUEST_URI} !subdirectory3/
ReWriteRule ^(.*)$ subdirectory3/$1 [R]
于 2012-06-23T21:06:01.717 に答える