두 사이트 중 하나는 Cloudflare 프록시 뒤에 있어 오프라인 캐시를 제공하므로 문제가 없습니다. 하지만 다른 하나는 Cloudflare를 사용하지 않습니다.
Discourse가 익명 사용자를 위한 공개 스레드만 정적 사이트로 내보내고, 상호작용 버튼은 비활성화한 채 상단에 "이 웹사이트는 업그레이드 중이므로 읽기 전용 모드입니다."라는 배너를 표시할 수 있는지 궁금합니다. 그런 다음 포럼이 업그레이드되는 동안 해당 정적 사이트를 제공하고, 포럼이 다시 온라인으로 전환되면 정적 캐시를 삭제하는 방식입니다.
DNS가 Cloudflare에 의해 관리되는 경우(프록시를 사용하지 않더라도) 일반적으로 몇 초 내에 업데이트됩니다. 업데이트가 진행되는 동안에는 도메인을 다른 서버(예: 모든 경로가 index.html 파일로 연결되는 Netlify/Vercel/Firebase/Surge 등의 유지보수 페이지)로 임시로 지정할 수 있습니다.
아직 시도해 보지는 않았지만, Cloudflare Worker(“서버리스” 함수)에서 resolveOverride를 사용하여 다른 백엔드를 임시로 서빙하는 것이 가능할 수 있습니다.
또한 SKIP_POST_DEPLOYMENT_MIGRATIONS=1에 대해서도 알아보세요. 간략히 설명하자면, 기존 데이터베이스가 손상되지 않도록 베드 컨테이너를 다시 빌드할 때 이 값을 설정하고, 새 컨테이너가 실행되면 이 값을 제거한 상태에서 다시 마이그레이션을 수행합니다.