티스토리 뷰
목차
클라우드플레어 5xx 오류(500·520·521·522 등)를 마주했다면 가장 먼저 떠오르는 질문은 하나입니다. “이게 Cloudflare 문제인가, 아니면 서버 문제인가?”
결론부터 말하면, 실제 원인 대부분은 원 서버(origin server) 쪽 문제입니다. 아래는 운영자가 반드시 따라야 하는 실전 단계별 해결 가이드입니다.
1) 서버 살아 있는가?
2) 리소스(메모리·CPU)는 충분한가?
3) 로그에 오류가 찍히는가?
4) SSL·DNS·방화벽 중 바뀐 설정은 없는가?
5) Cloudflare Proxy 비활성화 시엔 접속이 정상인가?
1. 원 서버 상태 점검 (가장 중요한 단계)
대부분의 Cloudflare 500 오류는 서버 자체의 장애로 인해 발생합니다. 먼저 아래 항목을 확인해 서버가 정상적으로 작동 중인지 판단해야 합니다.
✔ (1) 서버 리소스 체크
- CPU 90% 이상 지속 사용
- 메모리 부족(OOM 발생)
- 디스크 용량 부족(로그 폭주로 자주 발생)
리눅스 명령어 예시:
top
htop
df -h
free -m
CPU·메모리 부족으로 응답 지연이 발생하면 Cloudflare가 서버로부터 응답을 받지 못해 520/522 오류를 띄우는 경우가 흔합니다.
✔ (2) 웹 서버 프로세스 상태 확인
Apache / Nginx / Node / PHP-FPM 같은 웹 프로세스가 죽어도 Cloudflare는 5xx를 반환합니다.
systemctl status nginx
systemctl status apache2
systemctl status php-fpm
중단되어 있으면 즉시 재시작:
systemctl restart nginx
systemctl restart php-fpm
✔ (3) 애플리케이션 및 DB 오류 확인
PHP, Node.js, Python 기반 사이트라면 애플리케이션 로그에서 오류를 확인해야 합니다.
- Laravel →
storage/logs/ - WordPress →
wp-content/debug.log - Node.js → PM2 로그 확인
- DB 연결 에러(Too many connections 등)
2. Cloudflare DNS 설정 점검
서버 이전, IP 변경이 있었다면 Cloudflare DNS 업데이트 누락으로 오류가 발생할 수 있습니다.
- A 레코드가 현재 서버 IP와 일치하는지
- 프록시(주황색 구름)가 필요한지 판단
- 서브도메인도 동일하게 적용되어 있는지
특히 서버 이전 후 IP 변경을 놓치는 경우가 정말 많습니다. 이때 Cloudflare는 이전 서버와 연결 시도 → 응답 없음 → 5xx 에러 출력합니다.
3. SSL 인증서 설정 문제 해결
SSL 설정 충돌은 Cloudflare 525/526, 또는 520/500 등의 오류를 유발합니다.
✔ Cloudflare SSL 모드 확인
- Flexible → 서버에 인증서 없어도 됨
- Full → 서버에 인증서 필요(자체 서명도 가능)
- Full(strict) → 서버 인증서가 정식 CA 발급 + 유효해야 함
문제 사례:
- 서버에는 인증서가 없는데 Cloudflare가 Full(strict) → Cloudflare가 SSL 핸드셰이크 실패 → 오류 발생 - 인증서 만료 - 인증서 도메인 불일치
4. 서버 방화벽 및 보안 설정 점검
서버의 방화벽 또는 보안 솔루션이 Cloudflare IP를 차단하면 Cloudflare가 서버에 접속하지 못해 521/522 오류가 발생합니다.
✔ 반드시 필요한 조치
- Cloudflare IP 대역 전체를 화이트리스트에 등록
- fail2ban, ModSecurity, CSF 설정 확인
- 무료 호스팅의 경우 Cloudflare IP를 막는 경우가 있어 주의
Cloudflare IP 목록은 공식 문서에서 확인해야 하며, 변동될 수 있습니다.
5. 가장 빠른 진단법: 프록시(Proxy) 끄기
이 방법은 Cloudflare 문제인지 서버 문제인지 즉시 판별할 수 있습니다.
✔ 방법
- Cloudflare → DNS 메뉴로 이동
- 문제되는 도메인의 주황색 구름 클릭 → 회색(Proxy Off)
- 3~30초 후 직접 접속 테스트
✔ 진단 결과 해석
1) 프록시 OFF 상태에서 접속됨 → Cloudflare 설정 문제
- SSL 모드 충돌
- 방화벽에서 Cloudflare 차단
- Rate Limit/WAF 문제
2) 프록시 OFF 상태에서도 접속 안 됨 → 100% 서버 문제
- 서버 다운
- 애플리케이션 오류
- DB 연결 실패
- 리소스 부족
6. 추가적으로 반드시 확인해야 할 체크리스트
✔ (1) 최근 적용한 변경사항
코드 업데이트, 서버 설정 변경, SSL 재발급 이후 오류가 나는 경우가 매우 많습니다.
✔ (2) 서버 시간(Time Sync)
서버 시간이 틀리면 SSL 핸드셰이크 실패 → Cloudflare 오류 발생.
timedatectl
timedatectl set-ntp true
✔ (3) Rate Limit / WAF 규칙
Cloudflare WAF가 정상 트래픽을 공격으로 오해해 차단할 수 있습니다.
7. 정리 — Cloudflare 500 오류 95%는 서버 문제
클라우드플레어는 단순히 “중간 게이트웨이” 역할을 할 뿐, 서버 내부 문제까지 해결해주지 않습니다.
- 서버 응답 없음
- 애플리케이션 오류
- DB 연결 실패
- 리소스 부족
- 인증서 문제
- 방화벽 차단
위 목록에서 원인을 찾는 것이 가장 빠르고 정확한 해결책입니다. 만약 계속 반복된다면 서버 모니터링 또는 시스템 리소스를 업그레이드하는 것도 고려해야 합니다.