개발반장 codefix.kr

홈페이지가 갑자기 안 열립니다. 원인 찾는 법

화면에 뜨는 문구가 원인을 말해 줍니다. 문구별로 무엇이 잘못됐고 무엇부터 확인해야 하는지 정리했습니다. 대부분은 서버가 죽은 게 아닙니다.

기준

먼저 30초: 내 문제인지 아닌지 가릅니다

사이트가 아니라 보는 쪽(인터넷·PC) 문제인 경우도 있습니다. 두 가지만 해 보시면 알 수 있습니다.

  1. 휴대폰에서 Wi-Fi를 끄고 데이터로 열어보세요. 여기서 열리면 사무실 인터넷이나 PC 문제입니다.
  2. 주소를 직접 쳐서 들어가 보세요. 즐겨찾기가 옛 주소를 가리키는 경우가 있습니다.

둘 다 안 열리면 사이트 문제가 맞습니다. 이제 화면에 뜨는 문구를 보세요.

문구별로 원인이 다릅니다

"이 사이트에 연결할 수 없음" · "서버 IP 주소를 찾을 수 없음"

주소를 서버로 안내하는 정보(DNS)가 끊겼거나, 도메인이 만료됐습니다.

이 경우가 제일 자주 있고, 원인은 대개 도메인 만료입니다. 갱신 안내 메일이 예전 담당자나 업체 주소로 가서 아무도 못 본 경우입니다. 만료일부터 확인하세요.

"안전하지 않음" · "연결이 비공개로 설정되어 있지 않습니다" · NET::ERR_CERT_DATE_INVALID

SSL 인증서가 만료됐습니다. 사이트 자체는 멀쩡히 살아 있습니다.

무료 인증서는 90일짜리라 자동 갱신을 걸어 둡니다. 자동 갱신이 어느 순간 실패했는데 아무도 몰랐던 경우입니다. 갱신하면 즉시 정상으로 돌아옵니다. 다만 왜 자동 갱신이 멈췄는지를 같이 봐야 90일 뒤에 또 같은 일이 생기지 않습니다.

500 Internal Server Error

서버는 살아 있고, 프로그램이 실행 중에 죽었습니다.

대부분 직전에 무언가 바뀌었습니다 — 파일을 수정했거나, PHP 버전이 올라갔거나, 플러그인을 업데이트했거나. "어제까지 됐는데"라면 어제 무엇이 바뀌었는지부터 보면 됩니다. 서버 오류 로그에 정확한 원인이 한 줄로 남아 있습니다.

흰 화면만 나옴 (글자가 하나도 없음)

500과 같은 원인인데 오류 표시가 꺼져 있는 상태입니다. 역시 로그를 봐야 합니다. 화면만 봐서는 알 수 없습니다.

403 Forbidden

파일은 있는데 서버가 보여주기를 거부했습니다. 파일 권한이 바뀌었거나, 서버 설정에서 가리키는 폴더가 틀어졌습니다. 서버를 옮기거나 설정을 만진 직후에 자주 납니다.

404 Not Found

주소는 살아 있는데 그 페이지가 없습니다. 특정 페이지만 그렇다면 그 파일이 지워진 것이고, 모든 페이지가 그렇다면 주소 재작성 규칙(.htaccess)이 사라졌을 가능성이 큽니다.

열리기는 하는데 아주 느림

대개 데이터베이스입니다. 데이터가 쌓이면서 느려지거나, 어딘가 한 곳이 잠겨 있습니다. 서버 자원이 모자란 경우도 있습니다. 이건 화면만 봐서는 알 수 없고 실제로 재봐야 합니다.

스스로 확인해 보실 수 있습니다

무료 점검에 주소만 넣으시면 14가지를 즉시 봅니다 — 인증서 만료일, 브라우저 신뢰 여부, 도메인 만료일, 응답 속도, 보안 헤더 같은 것들입니다. 가입도 접수도 필요 없고 결과는 바로 화면에 나옵니다.

다만 무료 점검은 브라우저로 한 번 열어보는 수준까지입니다. 500 오류의 진짜 원인 같은 것은 서버 안의 로그를 봐야 알 수 있습니다.

고치기 전에 꼭 하실 것

손대기 전에 사본을 먼저 만드세요.
급한 마음에 이것저것 눌러보다가 되돌릴 수 없게 되는 경우가 있습니다. 파일과 데이터베이스를 통째로 받아 두면, 무엇을 해보든 원래대로 돌아올 수 있습니다.

원인을 못 찾으시겠으면 증상만 알려주시면 됩니다. 코드를 모르셔도 됩니다. 무엇이 어떻게 안 되는지만 적어 주시면 저희가 열어봅니다. 열어보고 판정하는 데까지는 비용이 들지 않습니다.

고칠 수 있는지부터 알려드립니다

코드를 몰라도 됩니다. 무엇이 어떻게 안 되는지만 적어 주시면 저희가 열어봅니다. 열어보고 판정하는 데까지는 비용이 들지 않습니다.