Nginx - 여러 도킹화된 Angular 애플리케이션을 위한 공통 유지 관리 페이지

Nginx - 여러 도킹화된 Angular 애플리케이션을 위한 공통 유지 관리 페이지

Nginx로 여러 Angular 앱을 호스팅하고 있습니다. 모두 자체 컨테이너에서 실행되며 컨테이너가 오프라인인 경우 /var/www/maintenance/에 있는 유지 관리 페이지를 표시합니다. 이를 위해 내 가상 호스트 구성 파일은 일반적으로 다음과 같습니다(관련 없는 부분은 생략됨).

server {

        ...  

        location / {
        proxy_pass http://127.0.0.1:8099;
        proxy_set_header X-FORWARDED-FOR $proxy_add_x_forwarded_for;
        proxy_set_header X-FORWARDED-HOST $host;
        proxy_set_header X-FORWARDED-PROTO $scheme;
        proxy_connect_timeout 1;
        proxy_next_upstream error timeout http_500 http_502 http_503 http_504 http_404;
        proxy_intercept_errors on;
        try_files $uri $uri/ /index.html;
        }

        error_page 403 501 502 503 504 /maintenance.html;
        location = /maintenance.html {
            root /var/www/maintenance;
        }
}

이것은 잘 작동하지만 변경해야 할 경우에는 번거롭습니다. 기본 nginx.conf에서 이 기능을 어떻게 구현하거나 유지 관리를 더 쉽게 만들 수 있습니까? 모든 가상 호스트 구성에 유지 관리 페이지 구성을 포함하는 대신 모든 가상 호스트 구성을 포함하는 nginx.conf에 한 번 포함할 수 있습니까?

답변1

다음을 포함하는 새 구성 파일을 추가합니다 maintenance.conf.

location = /maintenance.html {
    root /var/www/maintenance;
}

그런 다음 사용

include /path/to/maintenance.conf;

가상 호스트 구성에서.

관련 정보