2012-08-14 6 views
0

API에 버전 관리 논리를 추가하고 싶지 않습니다. 하위 도메인 부분을 결정하기 위해 와일드 카드 하위 도메인을 사용하고 nginx.conf에서 regex를 사용하면 요청을 특정 디렉토리로 라우팅 할 수 있습니다. 설정은 다음과 같습니다.와일드 카드 하위 도메인을 사용하는 API 버전 관리

server { 

     listen 80; 
     server_name .api.domain.com; 

     set $version $host; 

     if ($version ~ "^(.+).api.domain.com") { 
       set $version $1; 
     } 

     access_log /var/log/nginx/$version-access.log; 
     error_log /var/log/nginx/$version-error.log info; 

     location/{ 
       root /opt/webapps/app_$version/www/; 
       index index.php; 
     } 

} 

질문 : 이러한 기술의 단점이 있습니까?

+0

이 합리적인 것 같다 나에게 – cobaco

답변

0

더 나은 방법을 발견 - 서버 _에 이름을 캡처 : 때문에

server { 

    server_name ~^(?<version>.+).test$; 
    root /your-path/$version.test; 

} 

이이 방법은 더 나은 : 그것은이다

  1. IfIsEvil
  2. 훨씬 더 깨끗한