안녕하세요.
일반적으로 운영자 입장에서는
404 페이지 등으로 리디렉션 시켜서 표시하기보다는 메임 홈으로 리디렉션시켜서 에러가 안보이게 하는 것을 선호 하는 것으로 알고 있는데
검색엔진 등 외부에서는 에러페이지가아닌 메인페이지로의 리디렉션 시키는것을 안 좋아하지 않을까요?
명확히 400, 401, 403, 404, 500 이런에러 페이지로 리디렉션 하는게 좋을지 아니면 홈화면으로 리디렉션 시켜 버리는 게 좋을까요?
PHP | PHP 7.2 |
---|---|
CMS | Rhymix |
안녕하세요.
일반적으로 운영자 입장에서는
404 페이지 등으로 리디렉션 시켜서 표시하기보다는 메임 홈으로 리디렉션시켜서 에러가 안보이게 하는 것을 선호 하는 것으로 알고 있는데
검색엔진 등 외부에서는 에러페이지가아닌 메인페이지로의 리디렉션 시키는것을 안 좋아하지 않을까요?
명확히 400, 401, 403, 404, 500 이런에러 페이지로 리디렉션 하는게 좋을지 아니면 홈화면으로 리디렉션 시켜 버리는 게 좋을까요?
보안과는 상관없고요. 검색엔진 입장에서는 어떤 페이지가 존재하고 어떤 페이지가 존재하지 않는 것인지 분명하게 구분할 수 있는 것을 선호합니다. 200은 존재하는 것이고 404는 존재하지 않는 것인데 301/302 리다이렉션은 이것도 저것도 아니고 의미가 불분명해요.
예외적으로 보안상의 문제로 받아들여질 수 있는 경우는 이런 것이 있습니다. XE는 존재하지 않는 글에 접속하더라도 200 코드를 반환하기 때문에 정부기관 등에서 흔히 사용하는 보안취약점 점검 툴이 민감하게 반응합니다. 실제 취약점은 아니지만, 공공기관에 납품했다가 보안점검 나오면 귀찮아지지요. 라이믹스는 똑같은 화면이라도 정확하게 404 코드를 반환하기 때문에 문제가 되지 않습니다.
500번대 에러를 리다이렉션하면 서버 터지는 수가 있습니다. 안 그래도 에러나 과부하 때문에 서버 상태가 정상이 아니어서 500번대 에러가 발생하는 건데, 그걸 리다이렉션하면 메인화면을 또다시 요청하게 되므로 부하가 곱절로 올라갑니다.;;;
유저 입장에서도 뭔가 검색해서 들어갔는데 글이 없어졌다는 분명한 표시도 없이 그냥 메인화면만 나오면 짜증납니다. 즉 운영자 외에는 어느 누구도 원하지 않는 동작입니다.
에러 화면에도 레이아웃을 동일하게 적용하고, "이 글은 존재하지 않지만 이런저런 다른 콘텐츠가 있으니 한번 둘러보고 가실래유~?" 라는 식으로 페이지를 구성한다면 운영자가 원하는 미학과 유저가 원하는 명확성, 검색엔진이 원하는 정확한 시그널을 모두 전달할 수 있을 것 같습니다. 메인화면은 아니지만 나름대로 쓸모있는 랜딩페이지의 역할을 할 수 있는 것이지요. 해외 스타트업들 중에도 404 에러 화면에 간단한 애니메이션을 띄우거나 심지어 게임을 올려놓는 등, 재미있게 응용을 많이 합니다.