- 모든 관리자 페이지에서 DB 데이터를 서버에서 직접 HTML에 주입
- __INIT__ 글로벌 변수로 초기 데이터 전달 (fetch 불필요)
- 대시보드/사이트관리/AdSense/도메인/로그/사이트상세 전부 적용
- trust proxy 설정 (Traefik 뒤 동작)
- 저장/삭제/크롤링 등 액션은 여전히 API fetch 사용
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- fetch redirect:manual로 리다이렉트 방지
- 401/리다이렉트 시 로그인 페이지로 이동
- JSON 파싱 실패 시 빈 배열 반환 (빈 목록 방지)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- db.js: waitForDB() 추가 (최대 10회, 3초 간격 재시도)
- app.js: DB 연결 시 waitForDB 사용
- start-server.sh: git 유저명 @를 %40으로 인코딩
- docker-compose.yml: 볼륨 상대경로로 변경 (./data/)
- 디렉토리 권한 문제 해결
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- start-server.sh: git remote URL에 인증정보 포함 (비밀번호 입력 생략)
- setup-server.sh: 서버 최초 설치용 (clone + 디렉토리 생성)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- 디스커버리 크롤링: 태그/목록 페이지 URL에서 최신 글 링크 자동 탐색
(parse_rules.discovery.link_selector로 Read more 링크 찾기)
- AdSense 슬롯 ID 선택사항: client_id만 있으면 자동 광고 동작
- 사이트 관리: 저장 후 목록 즉시 갱신 (await loadSites)
- 사이트 관리: 크롤링 스케줄 설정 UI 추가 (크론 프리셋 버튼)
- 사이트 관리: 미리보기 버튼 추가 (렌더링 + 파싱 데이터 확인)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Ubuntu 서버에서 git fetch + reset으로 최신 소스 적용
- Docker 시스템 정리 후 빌드 & 실행
- 데이터 디렉토리 자동 생성
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Express.js 기반 관리자 페이지 (사이트/크롤링/AdSense/도메인 관리)
- PostgreSQL 16 + Docker Compose (Traefik 연동)
- 크롤러: axios + cheerio 기반 HTML 파싱
- 스케줄러: node-cron 기반 자동 크롤링
- 공개 사이트: slug/도메인 기반 DB에서 렌더링 HTML 서빙
- 도메인: admin.startover.co.kr
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>