logo

Nginx 404 리다이렉트

2019. 03. 19.

잘못된 경로로 서버에 요청했을 경우 일반적으로 Nginx 서버가 만들어주는 404 Not Found 디폴트 페이지가 보입니다.

 

 

뭐 이대로 그냥 보여줘도 되지만 검색엔진 최적화(SEO)나 봇들은 이 페이지를 사용자에게 보여준다는거 자체에 감점요인이 많은것 같더군요.

흔히말해서 사용자가 좀더 직관적으로 이해할 수 있는 404 페이지가 필요하다 그 말이죠.

 

그래서 온라인에 404 페이지 디자인을 찾아보면 정말 여러 디자인이 있습니다. 이미 큰 사이트들은 이런 작업을 해놨기 때문에 에러페이지도 딱딱하지않게 느껴지는곳도 많고요.

 

Nginx 환경에서 이 404 페이지를 어떻게 리다이렉트 시키는지 알아봅시다.

 

일단 당연히 404 페이지가 필요하겟죠!

루트 경로에 404.html 이나 404.php 를 만들어줍니다. 그리고 이쁘게 404 페이지를 만들어줍니다.

 

그리고 터미널을 이용해 nginx 의 설정파일 위치로 이동하고 아래 스샷처럼 에러페이지 구문을 추가해줍니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#sudo vi /etc/nginx/sites-available/default
...
 
server {
    ...
    
    error_page 404 /404.php;
 
    location ~ \.php$ {
        ...
        
        fastcgi_intercept_errors on;
    }
 
    ...
}
 
cs

 

위치가 어려워요... 검색하면 방법은 참 많이들 가르켜주는데 라인코드만 가르켜준단 말이에요. ㅜㅜ

여튼 위의 설정값을 껴놓고 Nginx를 재시작 해줍시다.

 

1
2
$ sudo service nginx reload
 
cs

 

그리고 강제로 404 에러를 유발하는 페이지접근을 시도하면...

 

 

참 쉽죠잉?

 

ssh 터미널 접근시 발생하는 문제에 대해

ssh 터미널 접근시 발생하는 문제에 대해

2019. 03. 19.
413 Request Entity Too Large 문제에 대해

413 Request Entity Too Large 문제에 대해

2019. 03. 19.
홈페이지 파비콘(favicon) 만들고 등록하기

홈페이지 파비콘(favicon) 만들고 등록하기

2019. 03. 18.
크리에이티브 커먼즈, CC 표시에 대해

크리에이티브 커먼즈, CC 표시에 대해

2019. 03. 18.
로그 더 보기