2014-11-26 3 views
1

약간의 연구를 통해 내 개발 디렉토리에서 일치하는 인스턴스 이름에 와일드 카드 하위 도메인을 사용하는 개발 디렉토리에서 htaccess 다시 쓰기 규칙을 만들었습니다. 나는 이것에 관해 거의 아무것도 알지 못함을 인정할 것이다. 그래서 도움이 정말로 필요하다. 그래서 현재 htaccess로 같은 동작 :htaccess help! 와일드 카드 하위 도메인을 일부 하위 도메인에 대한 특정 폴더에 다시 작성

instance_folder_name.mydomain.com 

public_html/development/instance_folder_name 

가 개발 디렉토리에서 개발 웹 사이트가 날 수 있기 때문에이 잘 작동하고 리디렉션

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\.mydomain\.com$ 
RewriteCond %{HTTP_HOST} ^(\w+)\.mydomain\.com$ 
RewriteCond %{REQUEST_URI}:%1 !^/([^/]+)/([^:]*):\1 
RewriteRule ^(.*)$ /%1/$1 [QSA] 

예 나는 각 사이트에 대한 하위 도메인을 끊임없이 만들어야 만한다. 여러 도메인이 하나의 줌라에 의해 관리되고 있음을 설치할 수 있도록

내가 줌라의 구성 요소에 추가로 가상 도메인을 사용

난 데 문제는 다음 시나리오에 접근하는 방법이다. 그래서 나는 모든

/public_html/development/client1 

에 갈 필요가 다음과 같은 하위 도메인 ...

client1.mydomain.com 
client2.mydomain.com 
client3.mydomain.com 

이있을 수 있습니다 난 내가하지만 예외를 제외하고, 모든 와일드 카드 하위 도메인을 처리하는 방법에 대한 일반적인 규칙이 필요한 것 같아요 예를

답변

1

에 대한 CLIENT1, CLIENT2, client3에 대한 이러한 3 개 하위 도메인에 대한 별도의 규칙을 가질 수 있으며, 기존의 규칙에서 제외 조건을 추가 :

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(client1|client2|client3)\. [NC] 
RewriteRule ^((?!client1/).*)$ /client1/$1 [L,NC] 

RewriteCond %{HTTP_HOST} !^(client1|client2|client3)\. [NC] 
RewriteCond %{HTTP_HOST} !^www\.mydomain\.com$ 
RewriteCond %{HTTP_HOST} ^(\w+)\.mydomain\.com$ 
RewriteCond %{REQUEST_URI}:%1 !^/([^/]+)/([^:]*):\1 
RewriteRule ^(.*)$ /%1/$1 [L] 
+1

완벽하게 작동했습니다. 정말 고마워요. –

+0

잘 했어. 다행 이네. – anubhava

관련 문제