- MigrationRunner: 이미 존재하는 테이블에 대한 "relation already exists" 오류 처리
- V002, V003 마이그레이션: ON CONFLICT DO NOTHING으로 멱등성 보장
- Web, Admin Program.cs: app.UseAntiforgery() 미들웨어 추가 (anti-forgery 토큰 검증)
변경사항:
- 마이그레이션 재실행 시에도 안전하게 처리
- 폼 제출 시 CSRF 공격 방지
- 관리자 로그인 페이지 405 에러 해결
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
- MigrationRunner가 ~/taxbaik_active/migrations에서 직접 SQL 읽음
- 리소스 임베딩 대신 배포 디렉토리의 마이그레이션 파일 사용
- 모든 테이블 생성 및 권한 설정 완료
배포 결과:
✅ Web 서비스 실행 중 (포트 5001) - HTTP 200 OK
✅ 모든 데이터베이스 테이블 생성됨
✅ 초기 데이터 삽입됨 (카테고리 5개, 블로그 5개, 관리자 1명)
✅ 공개 접근 가능 (http://178.104.200.7/taxbaik)
✅ Nginx 라우팅 정상 작동
- MigrationRunner 구현 (자동 DB 마이그레이션)
- Program.cs에 마이그레이션 자동 실행 추가
- 마이그레이션 SQL 파일을 임베드 리소스로 설정
- 완전한 배포 가이드 작성 (DEPLOYMENT_GUIDE.md)
- E2E 테스트 절차 포함
- 롤백 및 모니터링 가이드 추가
배포 준비 완료: Gitea CI/CD 자동 배포 활성화 가능
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>