본문 바로가기
프로그래밍/Tomcat

Tomcat 404, 500 page 설정

by 원피스랜드 2021. 1. 11.
반응형

Tomcat설정에서 404,500 등 아래 캡쳐화면과 같이 다양한 에러 발생시 페이지를 보여지게되는 기본 페이지를 Tomcat 설정하여 변경하는 방법에 대해서 포스팅 한다. 

 

tomcat 404 에러 발생시 기본페이지
tomcat 500 에러 발생시 기본페이지

왜 바꿔야하지??

<웹페이지 보안성 취약 문제>

 

이와 같은 설정은 사실 보안과 연결된다. 웹취약성으로 문제로 해커나 공격자로 하여금 해당 페이지가 서버에 실제로 없구나 하는 정보를 줄수 있게 된다. 보통 일단적인 사이트 운영시에는 해당 조치를 해주는것이 맞다. 404 외에도 http 유형별 에러코드를 감춤으로써 해커나 공격자에게 어떠한 정보도 주지 않을수 있다. 처리방법은 아주 간단한다. 

 

<처리방법>

web.xml 에서 설정에서 아래 코드를 추가해주면 된다. 보통 일반적으로는 서버가 어떤 상태의 에러코드를 리턴했는지 알수없게 하나의 페이지로 처리 하고는 한다. tomcat 서버 디렉토리의 web.xml 파일을 열어 <web-app> </web-app> 엘리먼트 사이에 적용이 가능하다. 물론 error.jsp는 미리 만들어 두어야 한다.

 

  <web-app>
  <error-page>
    <error-code>400</error-code>
    <location>/error.jsp</location>
  </error-page>  
 <error-page>
    <error-code>403</error-code>
    <location>/error.jsp</location>
  </error-page>  
  <error-page>
    <error-code>404</error-code>
    <location>/error.jsp</location>
  </error-page>
  <error-page>
    <error-code>500</error-code>
    <location>/error.jsp</location>
  </error-page>
  </web-app>

 

<유형별 서버 상태 코드>


400 : Bad request, 클라이언트의 잘못된 요청으로 처리할 수 없음
401 : Unauthorized, 클라이언트의 인증 실패
402 : Payment required, 예약됨
403 : Forbidden, 접근이 거부된 문서를 요청함
404 : Not found, 문서를 찾을 수 없음
405 : Method not allowed, 리소스를 허용안함
406 : Not acceptable, 허용할 수 없음
407 : Proxy authentication required, 프록시 인증 필요
408 : Request timeout, 요청시간이 지남
409 : Conflict
410 : Gone, 영구적으로 사용할 수 없음
411 : Length required
412 : Precondition failed, 전체조건 실패
413 : Request entity too large,
414 : Request-URI too long, URL이 너무 김
415 : Unsupported media type

500 : Internal server error, 내부서버 오류(잘못된 스크립트 실행시)
501 : Not implemented, 클라이언트에서 서버가 수행할 수 없는 행동을 요구함
502 : Bad gateway, 서버의 과부하 상태
503 : Service unavailable, 외부 서비스가 죽었거나 현재 멈춤 상태
504 : Gateway timeout
505 : HTTP version not supported

 

※ Tomcat에 관련된 아래 포스팅도 참고 하시길 바랍니다.

 

https://www.appletong.com/entry/linux-tomcat-설치방법-정리

 

linux tomcat 설치방법 정리

linux tomcat 설치방법 정리 오랫만에 설치 해본다. 주저리 떠들지 말고 설치 과정만 빠르게 정리 한다. 리눅스 버전 확인 [xxxx@ynkim]$ cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) 1. JDK 버전별 호환

www.appletong.com

 

https://www.appletong.com/entry/tomcat-tomcat-usersxml-삭제-FileNotFoundException

 

tomcat tomcat-users.xml 삭제 ( FileNotFoundException )

Tomcat에서 기본적으로 제공하는 MANAGER 페이지의 기능 관련 파일로 users의 데이터정보를 담고 있다. 보안상의 이슈도 있고 사용하지 않을 부분이라 판단되어, {tomcat_home}/conf/tomcat-users.xml 을 삭제하

www.appletong.com

 

반응형

댓글