Daylogs/Nginx
nginx: error_page 디렉티브의 기준 경로는 / 이다.
ohgyun
2015. 10. 13. 10:21
발생일: 2015.03.15
키워드: nginx, error page
문제:
nginx 에서 html 페이지를 에러 페이지로 설정하고, 인터널로 해당 룰을 처리하려고 한다.
error_page 404 404.html;
...
location ~* "^\w+\.html$” {
internal;
…
}
위와 같이 룰을 설정했는데 의도한 대로 라우팅되지 않는다.
왜일까...
해결책:
error_page 404 404.html;
위와 같이 처리할 경우, 404 에러가 발생하면, `404.html`이 아니라, `/404.html`로 라우팅된다.
error_page 디렉티브의 기준 경로가 루트 (/)인 모양이다.
헷갈리지 않게 아래와 같이 룰을 수정했다.
error_page 404 /404.html;
...
location ~* “^/\w+\.html$” {
internal;
…
}
반응형