2017-11-02 12 views
0

여러 서버에서 여러 응용 프로그램에 대해 Nginx 프록시를 설치하려고합니다. 브라우저에서 https://192.168.2.28/dashboard을 실행하는 동안Nginx 프록시 여러 위치에서 여러 서버

server { 
     listen 80; 
     listen 443 ssl; 
     server_name 192.168.2.28; 
     ssl on; 

    ssl_certificate /etc/nginx/ssl/nginx.crt; 
    ssl_certificate_key /etc/nginx/ssl/nginx.key; 


    location /dashboard/ { 
     proxy_set_header Host   $host; 
        proxy_set_header X-Real-IP  $remote_addr; 
        proxy_set_header X-Forwarded-for $remote_addr; 
        proxy_connect_timeout 300; 
        port_in_redirect off; 
     proxy_pass http://192.168.1.250/; 
    } 
} 

나는 유일한 루트 파일 /favicon.png 그러나 JS/CSS와 같은 내부 하위 폴더 위치에 해결되지 않은 즉 얻고있다.

도메인을 내부 디렉토리가있는 위치로 확인하는 방법. 나는 또한 스크린 샷을 첨부했다. 누구든지, 확인하고 해결하십시오. 내가 정확하게 문제를 이해한다면

Nginx SSL proxy error

답변

0

, 당신은 직접 장고 - 백엔드에 다른 모든 프록시 동안 정적 파일에 대한 요청에 응답 nginx에합니다.

시도하여 서버 설정이 추가 :

location /static/ { 
    alias  /path/to/static/directory/; 
} 

경우 세부 here

에 설명 된대로 위치가 원격 경로를 표현하려면, nginx를 할 수 있도록 같은 rewrite 요청 :

location ~ /static/ { 
    rewrite (.*)/(.*) http://external.tld/static/$2; 
} 

해당 옵션에 대한 자세한 내용 here

+0

답장을 보내 주셔서 감사합니다.하지만 외부 웹 사이트의 정적 파일이 필요합니다. http://192.168.1.250/static/css/main.9c622a2d.css 프록시 서버 => http://192.168.2.28/dashboard/static/css/main.9c622a2d.css – user204534

+0

해명 해 주셔서 감사합니다. 답변이 업데이트됩니다. 하나의 작은 것 : 내부 IP를 사용하는 실제 IP를 사용하는 것은 나쁜 습관으로 간주됩니다. – joppich