2017-12-06 7 views
1

저는 NGINX (일반 호스팅)를 처음 사용 했으므로 알려 주시기 바랍니다. Localhost : 4000에서 실행되는 Phoenix 웹 응용 프로그램과 localhost : 5123에서 실행되는 ASP.NET 웹 응용 프로그램이 있습니다. NGINX를 사용하여 역방향 프록시를 작성하여 두 웹 응용 프로그램이 동일한 도메인에서 액세스 될 수있게하려고합니다. 내 Nginx와 설정 파일에는 다음이 포함NGINX 두 번째 서버에 대한 리소스가로드되지 않습니다.

server { 
    listen 80; 
    server_name example.com; 

    location/{ 
    proxy_pass http://localhost:4000; 
    } 

    location /test { 
    rewrite /test(.*) /$1 break; 
    proxy_pass http://localhost:5123; 
    } 
} 

내가 example.com/testexample.com/ 및 서버 2 서버 1에 액세스 할 수있어, 그러나, 서버 (2)는 자신의 CSS, 자바 스크립트 및 이미지 파일을로드 할 수 없습니다. 서버 1과 서버 2가 NGINX 구성 설정을 통해 자체 리소스를 활용할 수있는 방법이 있습니까?

+0

스택 오버플로는 프로그래밍 및 개발 관련 질문에 대한 사이트입니다. 이 질문은 프로그래밍이나 개발에 관한 것이 아니기 때문에 주제와는 거리가 먼 것처럼 보입니다. 도움말 센터에서 [여기에서 내가 질문 할 수있는 항목은 무엇입니까?] (http://stackoverflow.com/help/on-topic)를 참조하십시오. 아마도 [Super User] (http://superuser.com/) 나 [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/)가 더 나은 곳이 될 것입니다. – jww

답변

0

올바른 방향입니다.

바꾸기 ...와 ...

location /test { 
    rewrite    /test/(.*) /$1 break; 
    rewrite    ^/test$ /test/ permanent; 
    proxy_pass    http://localhost:5123/; 
    proxy_redirect  //test/; 
    proxy_set_header  Host $host; 
    proxy_buffering off; 
} 

location /test { 
    rewrite /test(.*) /$1 break; 
    proxy_pass http://localhost:5123; 
} 

이 이것을 달성하는 가장 좋은 방법 인 경우 나도 몰라 : 약간의 두 번째 서비스에없는 선이있다 . 오랜 시간 전에이 구성을 사용하여 서버에 etherpad-service를 구현했습니다. 그 때 하위 도메인을 사용할 수있는 옵션이 없었습니다. 어쨌든 - 두 번째 서비스에 하위 도메인을 사용하는 것이 좋습니다.

+0

응답 해 주셔서 감사합니다. 귀하의 편집을하고 nginx 서비스를 다시로드했지만 변경 사항이 표시되지 않습니다. 자원은 여전히'/ test'에서 빠져 있습니다. – jsonkenl

+0

@jsonkenl 브라우저를 다시 시작한 적이 있습니까? (어쩌면 사이트가 여전히 브라우저에 의해 캐시되어있을 수도 있습니다.) – rweisse

+0

예, 저는 현재 Firefox를 사용하고 있으며 (현재 Chrome을 사용하고 있습니다) 동일한 문제를 열었습니다. – jsonkenl