# 동영상 로드 실패 (서버 중지) 복구

**이슈**: #0
**소요 시간**: 10분
**Context 사용량**: input 45k / output 3k tokens

## 증상
좌측 동영상 목록에서 항목 클릭 시 "로드할 수 없음" 에러.

## 원인
- 백엔드 서버(pm2 프로세스 `abcVideo`, 포트 55173)가 **stopped 상태**였음.
- 프론트엔드와 API가 동일 포트(노드 정적 서빙)에서 동작하므로, 서버가 죽으면 `/api/stream/:videoId` 요청이 전부 실패 → 영상 로드 불가.
- pm2 error 로그상 과거 `EADDRINUSE`(포트 3030 충돌)로 재시작 실패 이력이 있었고 stopped로 남아 있었음.
- 코드(URL 인코딩, Range Request, 한글·괄호 포함 파일명 처리)는 정상.

## 조치
1. `pm2 restart abcVideo --update-env` → online 복구
2. 검증
   - `GET /api/videos` → `하행)회덕-대전조차장.MP4` 반환
   - `GET /api/stream/...` (Range 0–1MB) → HTTP 206, 1MB 수신
   - `GET /api/meta/...` → HTTP 200
3. `pm2 save`로 프로세스 목록 저장

## 후속 참고
- `FFmpeg not found in PATH` 경고 → HLS 변환/프레임 추출은 FFmpeg 설치 후 동작 (즉시 재생은 영향 없음).
- `client/vite.config.ts` 프록시 타깃이 `localhost:3030`인데 실제 서버 포트는 55173.
  프로덕션 정적 서빙에는 무관하나, Vite 개발 서버(`npm run dev`) 사용 시 API 프록시 불일치로 동작 안 함 → 개발 모드 사용 시 포트 정정 필요.
