HTTP 상태 코드는 테크니컬 SEO 진단 시 여러분이 아셔야 하는 필수 지식 중 하나인데요. 그 이유는 상태 코드를 통해 여러분의 페이지가 정상적인 접근이 이루어지는지에 대한 여부를 알 수 있기 때문입니다.

이번 편에선 HTTP 상태 코드의 의미, SEO 관점에서 주목해야 할 코드들, 마지막으로 HTTP 상태 코드 확인 방법까지 알아보겠습니다.

HTTP 상태 코드를 설명 하기 앞서 HTTP에 대해 알아보겠습니다.

 

목차

  • HTTP란?
  • HTTP 상태 코드란?
  • HTTP 상태 코드 분류
  • SEO에서 HTTP 상태 코드가 중요한 이유
  • SEO에서 흔하게 접하는 HTTP 상태 코드 6가지
    • 200 (OK)
    • 301 (Moved Permanently)
    • 302 (Found / Moved Temporarily)
    • 404 (Not Found)
    • 500 (Server Error)
    • 503 (Service Unavailable)
  • HTTP 상태 코드 확인 방법
  • 마치며

 

 


 

 

HTTP란?

 

 

 

HTTP는 HyperText Transfer Protocol(하이퍼텍스트 전송규약)의 줄임말로 클라이언트와 서버 사이에 이루어지는 요청/응답 프로토콜인데요. 예시로, 클라이언트(PC 및 브라우저)가 HTTP를 통해 서버에게 정보를 요청하면 서버는 이 요청에 응답하여 해당 정보를 클라이언트에 전달합니다. 그러면 여러분은 이 정보를 여러분의 모니터에서 볼 수 있게 됩니다.

 

 

HTTP 상태 코드란?

 

그렇다면 HTTP 상태 코드가 대략 어떤 것을 뜻하는지 눈치채신 분들도 있으실 것입니다. 클라이언트가 보낸 HTTP 요청에 대한 서버의 응답 코드입니다. 상태 코드에 따라 요청의 성공/실패 여부를 세 자릿수(예시: 404)로 구분합니다.

 

 

HTTP 상태 코드 분류

 

분류

내용

1xx Informational
(조건부 응답)

클라이언트가 서버에 정보를 요청했지만 해당 요청이 여전히 처리 중임을 나타냅니다 (해당 상태 코드를 접할 일은 많이 없습니다).

2xx Successful
(성공)

여러분이 원하는 상태 코드입니다. 이러한 코드는 서버가 브라우저의 요청을 수신하고 성공적으로 처리했음을 나타냅니다.

3xx Redirection
(리디렉션)

3xx 리디렉션은 서버가 요청된 페이지가 일시적으로 또는 영구적으로 이동되었음을 클라이언트에 알릴 때 나타납니다. 원래 요청한 리소스를 더 이상 사용할 수 없습니다.

4xx Client Error
(요청 오류)

클라이언트의 잘못된 요청으로 서버가 이해를 못해 요청을 수행할 수 없음을 의미합니다.

5xx Server Error
(서버 오류)

클라이언트가 특정 리소스에 대한 액세스를 요청하고 성공했지만 서버 오류로 인해 서버가 요청을 정상 처리하지 못함을 의미합니다.

 

 

SEO에서 HTTP 상태 코드가 중요한 이유

 

SEO 작업 시 HTTP 상태 코드에 대한 지식이 없는 것은 불어를 모르는 사람이 프랑스 파리의 다이닝 레스토랑을 관리하는 것과 같습니다. 식당에서 많은 일이 일어나지만 무엇이 어떻게 되고, 왜 일어났는지, 어떻게 개선해야 할지 모르는 것과 같습니다.

 

 

SEO에서 흔하게 접하는 HTTP 상태 코드 6가지

 

  • 200 OK
  • 301 (Moved Permanently)
  • 302 (Found / Moved Temporarily)
  • 404 (Not Found)
  • 500 (Server Error)
  • 503 (Service Unavailable)

 

 

200 (OK)

 

의미

여러분이 가장 원하는 상태 코드입니다. 서버가 응답으로 HTTP 상태 코드 200을 보낼 시 요청이 성공적으로 수신되었음을 클라이언트에 알려주고 요청된 내용으로 응답합니다. 즉, 모든 것이 정상적으로 작동되었다는 것을 의미합니다.

 

SEO 측면 의미

페이지가 완벽히 로딩되었다는 것을 뜻합니다. SEO 측면에서 추가적인 작업은 필요하지 않습니다.

 

 

301 (Moved Permanently)

 

의미

‘301 리디렉션’은 URL이 영구적으로 다른 위치로 이동했음을 뜻합니다. 해당 요청 및 이후의 모든 요청은 다른 URL로 리디렉션 되어야 합니다. 영구적인 특성상 리디렉션된 요청 URL의 모든 신호는 대상 URL로 전달됩니다. 브라우저도 향후 추가 요청을 저장하기 위해 ‘301 리다이렉트’를 캐시하는데요, 캐시 작업을 통해 페이지 표시 속도가 빨라져 사용자 환경 또한 개선됩니다.

 

SEO 측면 의미

검색 엔진이 301에 해당되는 페이지를 확인하면 이전 페이지의 페이지 순위 및 링크에 대한 점수가 새 페이지로 전달합니다. 위치 변경이 일시적인 경우 301 코드를 사용하면 안 되는데요. 이전 URL 위치로 회귀하는 경우 더 이상 페이지 순위나 링크에 대한 점수가 매겨지지 않기 때문입니다.

 

 

302 (Found / Moved Temporarily)

 

의미

‘302 리디렉션’은 URL이 일시적으로 다른 위치로 이동했음을 뜻합니다. 많은 시간이 지나면 검색 엔진에서 302 리다이렉트를 301 리다이렉트로 처리할 수 있음을 명심하세요.

 

SEO 측면 의미

일시적인 특성상 리디렉션된 URL의 페이지 순위나 링크에 대한 점수는 대상 URL로 전달되지 않으며 리디렉션된 URL은 통합되지 않고 순위가 매겨집니다.

 

 

404 (Not Found)

 

의미

404 상태 코드는 손상된 링크를 클릭할 때 표시되므로 웹을 검색하는 대부분의 사용자 가장 많이 접하는 일반적인 상태 코드입니다. ‘404 에러’는 요청된 리소스를 찾을 수 없음을 나타내는데요. 즉, 클라이언트는 서버와 통신할 수 있지만 서버 측에선 클라이언트가 요청한 바를 찾을 수 없다는 것을 뜻합니다.

404 에러는 개발자 혹은 서버 유지보수 단에서 생긴 문제 때문에 존재하는 콘텐츠에 대해서도 404 에러가 발생할 수 있습니다. 콘텐츠를 제거하지 않았다면 URL에서 404 오류를 반환하도록 하는 것은 좋지 않습니다.

 

SEO 측면 의미

구글은 404 에러는 SEO, 정확히 말씀드리자면 사이트의 검색 성과에 영향을 미치지 않는다고 밝혔습니다.

그럼에도 불구하고, 삭제된 콘텐츠의 URL을 여러분의 웹사이트에서 제거하는 것을 권장 드립니다. 검색 엔진은 차치하더라도 404 에러 페이지는 웹사이트 방문자에게 혼선을 줄 뿐만 아니라 웹사이트 재방문률에 대해 부정적인 영향을 미치기 때문입니다.

또한 웹사이트 내 존재하는 인링크가 404 페이지들로 향하면 웹사이트 순위에 영향을 끼칠 수 있는 것 또한 명심해야 합니다. 마지막으로, 여러분이 콘텐츠를 없애지 않았는데 404 에러가 발생하면 큰 문제이기에 개발자 혹은 서버 관리자와 함께 문제를 해결해야 합니다.

 

 

500 (Server Error)

의미

‘500 서버 에러’이 코드는 서버가 사용자의 리소스 요청을 처리할 수 없을 때 나타납니다. 이러한 에러는 서버 구성 에러로 인해 발생하는 일반적인 에러입니다. 문제 요인으로 잘못된 형식의 htaccess 파일(Apache 기반 웹 서버에서 디렉토리에 대한 설정 옵션을 제공하는 파일)과 잘못 실행된 PHP 파일에서 누락된 패키지가 자주 의심됩니다.

 

SEO 측면 의미

내부 서버 오류는 특히 상황이 한동안 감지되지 않을 경우 SEO에 매우 강력하고 부정적인 영향을 미칠 수 있습니다. 가끔 일어나는 실수는 문제가 되지 않습니다. 하지만 페이지를 보내는 웹 서버가 페이지를 표시하려고 할 때 오류가 발생하기에 정상적으로 보여야할 페이지가 보이지 않을 경우 SEO는 영향을 받습니다.

 

 

503 (Service Unavailable)

의미

503 코드는 서버를 현재 사용할 수 없으며 그 결과 클라이언트의 요청을 처리할 수 없음을 나타냅니다. 404 에러는 한 개의 페이지에서 일어난다면, 503 에러는 웹사이트 전체에 영향을 줍니다. 대개의 경우에는 서버 점검, 혹은 서버 과부하 때문에 발생합니다.

 

SEO 측면 의미

일시적인 503 에러는 사실 문제가 되지 않습니다. 하지만, 503 상태가 지속되면 검색 엔진의 인덱스에서 URL이 제거되어 SEO에 심각한 영향을 미칠 수 있습니다.

 

 

HTTP 상태 코드 확인 방법

 

그렇다면, HTTP 상태 코드를 어떻게 확인할 수 있을까요? Deep Crawl, Screaming Frog 등의 도구로 크롤링 작업을 통해 HTTP 상태 코드들을 확인할 수 있습니다. 하지만 이번 편에선 쉽게 접할 수 있는 구글 서치를 통해 확인하는 방법을 알려드리겠습니다.

알려드리기 앞서, 서치 콘솔 계정 만들기와 사이트맵 제출 과정이 선행 되어야 합니다. 아직 두 과정을 안하신 분들은 해당 과정을 완료할 것을 권장 드립니다.

 

 

 

 

  1. 구글 서치 콘솔에 방문합니다.

2. 좌측 탭에서 스크롤 다운 후 설정’ 버튼을 클릭합니다.

 

 

 

 

3. 크롤링 통계 옆에 적힌 보고서 열기’를 클릭합니다.

 

 

 

 

4. 응답 기준 박스에서 웹사이트의 HTTP 상태 코드 현황을 확인 할 수 있습니다.

5. 자세한 정보는 응답 기준 박스 내각 코드를 클릭하여 볼 수 있습니다.

 

 

 

 

6. 또한 보고서 내보내기’버튼을 클릭해 크롤링 요청 보고서를 엑셀 형태로 확인 가능합니다.  

 

 

마치며

 

지금까지 테크니컬 SEO 진단시 자주 접하는 HTTP 상태 코드들의 의미부터 서치 콘솔을 통한 확인 방법까지 알아보았습니다. 클라이언트와 서버간 통신시 사용되는 HTTP에 대한 나날이 중요해지고 있는데요. HTTP의 업그레이드 버전인 HTTPS를 사용하는 것은 Google 검색 순위 시스템 가이드에서도 권장되고 있습니다. 이전에 TBWA Datalab에서 발행한 ‘HTTP, HTTPS의 차이점 및 전환의 중요성’ 글도 있으니 관심 있으신 분들은 읽으시길 추천드리며 글을 마치겠습니다.

 

 

당 글은 TBWA 데이터랩과 모비인사이드의 파트너쉽으로 제공되는 기사입니다.