2016-09-02 2 views
0

동일한 서버에 2 개의 응용 프로그램이 있으며 동일한 도메인의 다른 포트 [8080,8090]가 있습니다.NGINX 하나의 도메인에 여러 응용 프로그램

나는 다음과 같은 구성의 nginx 있습니다

server { 
     listen 80 ; 
     server_name XXX.XXX.XXX; 
     root   /usr/share/nginx/html; 
     # Load configuration files for the default server block. 
     include /etc/nginx/default.d/*.conf; 

     location /{ 

     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header X-Forwarded-Proto $scheme; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-NginX-Proxy true; 

     proxy_pass http://localhost:8080; 
     } 

     location /admin { 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header X-Forwarded-Proto $scheme; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-NginX-Proxy true; 

     proxy_pass http://localhost:8090; 
     } 

    } 

문제는 잘 작동 포트 8080에 적용하지만, 다른 응용 프로그램의 CSS는로드가 404 오류가 발생하고 있지이다./디렉토리에 그것의 요점을 보인다.이 사건을 처리하는 가장 좋은 방법은 무엇인가?/관리 응용 프로그램에 대한 히트, 응용 프로그램/로그인 페이지를 반환해야하는 경우

나는 nginx를 로그에보고했다 : 그것은 올바른 응용 프로그램 다음/로그인에의 nginx 프록시/관리자가하지 않은 것을 알 수

xx.xx.xx.xx - - [03/Sep/2016:09:00:35 +0000] "GET /admin/ HTTP/1.1" 302 0 "-" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:39.0) Gecko/20100101 Firefox/39.0" "-" 
xx.xx.xx.xx - - [03/Sep/2016:09:00:36 +0000] "GET /Login HTTP/1.1" 404 0 "-" "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:39.0) Gecko/20100101 Firefox/39.0" "-" 

내가 다음에 구성을 변경하는 경우 구성에는 404을 반환 할 수 있도록 :

location /admin { 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header X-Forwarded-Proto $scheme; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-NginX-Proxy true; 

     proxy_pass http://localhost:8090/Login; 

그것의 작동하지만, CSS하지를 다시 nginx를 구성에있는 모든 CSS 파일의 URL을하지 사촌 !!!!

답변

0

정적 파일을 다른 방법으로 제공하고 정적 파일에 대한 요청을 백엔드로 보내지 않아야합니다.

내가 리디렉션하지에 대한 구성 관련 문제에 생각 답변 https://www.nginx.com/resources/wiki/start/topics/examples/full/#

+0

감사합니다, 난, 문제는보고가 업데이트가 여기에 다른 설정에 대한 정보의 예를 참조 location /{...}

# serve static files location ~ ^/(images|javascript|js|css|flash|media|static)/ { root /usr/share/nginx/html/<folder with your static files>; include /etc/nginx/mime.types; expires 30d; } 

하기 전에 다음 섹션을 추가 정적 파일을 제공하십시오 .. –

+1

@moata_u 그냥 'location ~ ^/(admin | Login) /'조건을 사용하는 것이 어떻습니까? –

관련 문제