목록 보기
CSR 환경에서 Dynamic OpenGraph 구현하기
프론트엔드

CSR 환경에서 Dynamic OpenGraph 구현하기

더스윙
더스윙
2025년 12월 3일

두줄요약

CSR 환경에서 소셜 공유용 OpenGraph 메타 태그를 동적으로 제공하는 방법을 다뤘습니다. CloudFront Function으로 봇만 분기해 엣지에서 HTML을 응답하고 기존 CSR 구조는 유지했습니다.

문제 상황

  • Vite + React 기반 CSR에서 소셜 크롤러가 동적 메타 태그를 읽지 못하는 문제
  • 멤버십별로 다른 OpenGraph 카드가 필요하지만 SSR 전환은 과도한 상황

원인 분석

  • React Helmet 같은 클라이언트 측 메타 변경은 봇이 실행하지 않는 JavaScript에 의존
  • SPA 라우팅과 S3/CloudFront 정적 호스팅 구조가 멤버십별 HTML 응답과 맞지 않음

해결 방법

  • Vite 플러그인으로 SSG 파일을 생성해보았지만 운영 복잡성과 확장성 문제를 재확인
  • CloudFront Function에서 User-Agent로 봇을 판별해 엣지에서 OpenGraph HTML을 즉시 응답
  • 일반 사용자는 기존 S3 index.html과 CSR 라우팅을 그대로 유지

다음 읽기

#AWS 주제를 다룬 다른 회사 글

S3 + CloudFront 기반 SPA 배포에서 캐시와 fallback 전략 설계하기

S3·CloudFront 기반 SPA에서 HTML, hashed asset, route fallback의 캐시 책임을 분리했습니다.\n누락 asset은 404로 유지하고 chunk 오류에는 1회 새로고침 방어를 적용했습니다.

쏘카
쏘카
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...