2016-12-24 2 views
0

나는 다음과 같은 URL 구조가 있습니다Nginx의 : 하위 도메인 하위 폴더로 리디렉션

domain.com/folder1/folder2/folder3/file.xy 

폴더 1이 항상 존재하고 무엇을 다음과 것은 완전히 유연하고 다른입니다. 예를 들어도있을 수 :

domain.com/folder1/file.xy 

을 그래서 기본적으로 내가 하위 도메인 열 수 오전 내가 지금 달성하고자하는 것은

domain.com/folder1/* 

입니다 : 어떤과

folder1.domain.com/* 

을 nginx는 하위 도메인이 첫 번째 하위 폴더와 동일하다는 것을 자동으로 인식하여 하위 도메인과의 요청이

012와 같습니다.
domain.com/folder1/* 

어떻게 이것을 nginx로 할 수 있습니까?

도움 주셔서 감사합니다.

편집 : 조금 더 명확히하기 위해 : "folder1"은 무엇이든 될 수 있습니다. 따라서 기본적으로 모든 하위 도메인은 첫 번째 하위 폴더와 동일합니다.

+0

과 같을 것이다 Regular expressions names

서버 블록에 대한 시도를 제공 할 수 있습니다. –

+0

정규 표현식'server_name'을 사용하여 [root]를 설정하는 [이 예제] (http://nginx.org/en/docs/http/server_names.html#regex_names)를 참조하십시오. –

답변

0

당신은 당신은 다른 루트 디렉토리와 각 하위 도메인을 정의해야하는

server { 
    listen  80; 
    server_name "~^(?<folder>.+)\.domain\.com$" ; 
    location/{ 
     root /srv/http/$folder; 
    } 
} 
관련 문제