안녕하세요. scenic 입니다. 

 

오늘은 Nginx 에서 에러 페이지를 처리하는 설정에 대하여 정리하였습니다.

 

먼저 기본적인 특정 디렉토리에 대한  404 에러 페이지 처리입니다.

location /test {
    error_page    404 = /error_404.html;    
}
 
 

 

아래와 같이 여러 에러 코드들을 한번에 처리도 가능합니다. 

location /test {
    error_page 500 502 503 504 = /error.html
}
    
 

 

그리고 server 단에서 설정을 추가하여 하여 해당 호스트 전체에 에러 페이지 처리도 가능합니다.

server {
      listen 80; 
     sever_name localhost    
       error_page  404 = /error_404.html;
     ... 
             location /test {
                   ...      
                }

} 

 

http 테그내의 upstream 서버 설정을 이용하여 아래와 같이 특정 URL로 에러 페이지 설정을 할 수도 있습니다. 

upstream error {
  server 10.130.10.23:80;
}


server {
                   location /test {
                                     error_page    404 = @try_server2;        
                                 }
                    location @try_server2 {
                                      proxy_pass http://error;
                                }
}
 
 

이외에도 에러 페이지 처리하는 설정은 다양한데,  NginX 에서는 비교적 정교하게 에러페이지 처리가 가능한 것으로 보입니다. 

이상입니다.