웹서버를 구동하거나 사이트를 방문하면 다음과 같은 에러 메시지를 가끔씩 볼 수 있습니다.

'500 Server error'


간단하게 이해하면 서버 에러라는 사실입니다. 그런데 앞에 있는 500이라는 숫자는 무엇일까요? 그리고 어떤 의미가 있을까요? 아래는 이처럼 발생 가능한 서버 에러를 간략하게 정리한 내용입니다.



# 서버 에러 메시지 관련 알아보기500이라는 숫자처럼 각각의 에러마다 정의된 코드와 의미를 가지고 있습니다. 만약 Internal Server error가 500인 경우 다음과 같은 상황입니다.

! 500 에러 메시지를 출력하는 경우500에러는 서버의 동작에서 발생하는 에러인 경우 발생합니다. 400 등의 퍼미션 에러와는 구분할 수 있습니다. 발생되는 원인을 살펴보면 다음과 같습니다.

- 퍼미션 관련 오류
- 서버 통신의 Timeout 시간 지연 오류
- 서버 트래픽 과부하
- 서버 언어의 구문 에러(스크립트 문법 오류)

이처럼 500 에러는 단순한 이유로 나타내는 오류 신호로 자세한 정보를 담고 있지는 않기 때문에 정확한 원인 파악을 위해서는 정보가 부족한 게 사실입니다.


! 500 에러의 출력 메시지의 형태서버 마다 출력하는 메시지는 다양한데요 일반적으로 아래의 경우처럼 출력됩니다.
Internal 500 error
HTTP 500 error
Internal Server Error
500 Error
500: Internal Server Error

어떤 OS에서의 서버 환경이냐에 따라 다르겠죠. 예를들어 nginx, apache의 에러값 역시 Default 또는 custom 에러 설정 등에 다른 메시지를 반환할 것입니다.


! 기타사항서버 중에서도 IIS 서버의 경우는 가장 자세한 500 에러를 반환한다고 합니다.