티스토리 뷰

반응형

서버에서 존재하지 않는 페이지 혹은 서버 에러가 났을 때 Nginx 설정만으로도 에러 페이지를 출력할 수 있습니다. 설정하는 법은 nginx.conf 내의 http를 수정하면 됩니다. 

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;

    server {
        listen 80 default_server;

        error_page 403 404 /err_page_404.html;
        location = /err_page_404.html {
                root '/src/main/resources/error/';
                internal;
        }
    }
}

여기서 server 내의 설정을 확인해보시면 에러 페이지에 대한 핸들링과 어떤 페이지를 출력하는지 설정할 수 있습니다. 위에서 작성한 대로 403, 404 에러가 나면 err_page_404.html로 이동을 하게 됩니다. 서비스 장애 또는 에러페이지를 교체할 때 사용하면 유용합니다!

    server {
        listen 80 default_server;

        error_page ${에러코드1} ${에러코드2}... ${에러페이지.html};
        location = ${에러페이지.html} {
                root ${에러페이지 경로};
                internal;
        }
    }

 

 

반응형
댓글
공지사항