2011-12-23 4 views
1

안녕하세요 주 서버의 하위 디렉토리에있는 독립 사이트가 있습니다.htaccess가 서브 도메인으로 다시 작성됩니다.

하위 디렉토리 사이트 내의 모든 링크는 루트를 가리키며이를 캡처하여 루트가 아닌 하위 디렉토리로 다시 보내고 싶습니다.

htaccess로 가능합니까?

답변

2

하위 디렉토리로 리디렉션하지 않고 하위 도메인이 문서 루트 인 것처럼 다른 도메인을 작동하게합니다. 나는 더 좋다고 생각한다.

RewriteEngine on 
RewriteBase /

RewriteCond %{HTTP_HOST} ^seconddomain.nl$ [NC] 
RewriteCond $1 !^subfolder 
RewriteRule ^(.*)$ /subfolder/$1 [L] 
1

@Gerben는 (그 대답은 당신이 완전히 지금 upvote에 가서해야한다)이 하위 디렉터리는이 같은 문서 루트 인 것처럼 당신이 다른 도메인 동작합니다을 만들 수 있습니다 지적 :

RewriteEngine on 
RewriteBase /

RewriteCond %{HTTP_HOST} ^seconddomain.example.com$ [NC] 
RewriteCond $1 !^subdir 
RewriteRule ^(.*)$ /subdir/$1 [L] 

가 당신이 물어 보는 또 다른 방법은 HTML 문서에 <base> 태그를 사용하는 것입니다. 한 가지 이점은 웹 서버가 제공하는 모든 단일 문서 (하위 디렉토리/하위 도메인에 이 아닌 포함)에 대해 추가 .htaccess 처리를하지 않는다는 것입니다.

당신이 htaccess로 내부를 싶지과 관계없이 하위 도메인인지 여부의 리디렉션이있는 경우,이 보일 것입니다 :

RewriteEngine on 
RewriteCond %{PATH_INFO} !^subdir/ 
RewriteRule ^(.*)$ subdir/$1 [L] 
관련 문제