여기서는 멈추세요
- 명령 출력의 서버·서비스·경로가 예상 대상과 다르면 변경 단계로 넘어가지 않습니다.
- 현재 접속 세션, 백업 또는 콘솔 복구 경로를 확보하지 못했다면 상태 변경 명령을 실행하지 않습니다.
WEB GATEWAY
SAFE OPERATING BOUNDARY
변경 전 설정과 출력값을 기록하고, 예상과 다른 결과가 나오면 추가 변경을 멈춘 뒤 승인된 운영 복구 절차로 되돌립니다.
BEFORE YOU START
CHECK THE BRANCH
upstream 미기동, 포트 불일치, 주소 바인딩 문제를 우선 확인합니다. 타임아웃을 늘려도 해결되지 않습니다.
upstream이 연결 또는 응답 제한 시간 안에 처리하지 못한 경우입니다. DB·외부 API·애플리케이션 지연을 먼저 측정합니다.
애플리케이션 종료, OOM, 예외 또는 응답 중 연결 종료를 의심하고 같은 시각의 upstream 로그를 대조합니다.
FOLLOW THE FLOW
먼저 프록시 설정 자체가 유효한지 봅니다.
sudo nginx -tsystemctl status nginx --no-pager -lsyntax is ok와 test is successful이 모두 나와야 합니다.
실패하면 reload하지 말고 표시된 파일과 줄을 수정합니다.
장애 시각 주변의 첫 upstream 오류를 찾습니다.
sudo tail -n 120 /var/log/nginx/error.logjournalctl -u nginx -b -n 100 --no-pagerConnection refused는 미기동·포트 불일치, timed out은 지연·타임아웃 가능성이 큽니다.
로그에 표시된 upstream 주소와 포트를 기록합니다.
예시 3000을 실제 upstream 포트로 바꿉니다.
sudo ss -lntp | grep ':3000 'curl -i --max-time 10 http://127.0.0.1:3000/직접 요청도 실패하면 NGINX가 아니라 애플리케이션 문제입니다.
애플리케이션 서비스 로그로 이동합니다.
SERVICE_NAME을 실제 upstream unit으로 바꿉니다.
systemctl status SERVICE_NAME --no-pager -ljournalctl -u SERVICE_NAME --since '-15 min' --no-pager재시작 루프, DB 연결 실패, 메모리 종료 여부를 확인합니다.
원인을 수정하고 로컬 직접 요청이 성공하는지 먼저 봅니다.
nginx -t가 성공한 경우에만 reload합니다.
sudo systemctl reload nginxcurl -I --max-time 10 https://example.com/정상 상태 코드와 응답 시간, 오류 로그 미증가를 확인합니다.
504가 반복되면 타임아웃을 늘리기 전에 upstream 지연 원인을 분석합니다.
PRIMARY REFERENCES
배포판과 버전에 따라 옵션·로그 위치가 다를 수 있습니다. 실행 전 서버의 --help와 로컬 매뉴얼을 함께 확인하세요.