architecture

도메인 아키텍처

2-프로젝트 모델과 도메인 매핑 규칙

도메인 아키텍처

2-프로젝트 모델

Modfolio 생태계에서 각 브랜드는 두 개의 독립 프로젝트로 분리됩니다.

구분 도메인 역할 프레임워크
앱 domain.com 핵심 기능 (인증, 대시보드 등) SvelteKit, SolidStart 등
랜딩 www.domain.com 마케팅, 문서, SEO Astro

이 분리는 성능과 관심사 분리를 위한 설계입니다. 앱은 동적 SSR이 필요하고, 랜딩은 정적 생성이 효율적이기 때문입니다.

naviaca.com          → SvelteKit 5 (앱)
www.naviaca.com      → Astro (랜딩)

gistcore.com         → SolidStart (앱)
www.gistcore.com     → Astro (랜딩)

entryMode

naked 도메인(domain.com)에 접속했을 때의 동작을 entryMode로 결정합니다.

app-first

domain.com/ 접속 시 앱 홈을 직접 표시합니다. 사용자가 즉시 핵심 기능에 접근합니다.

GET domain.com/
→ 200 OK (앱 홈 화면)

GET www.domain.com/
→ 200 OK (마케팅 랜딩 페이지)

이 모드는 이미 사용자 기반이 확보된 앱에 적합합니다. 로그인한 사용자가 대시보드에 바로 진입하는 패턴입니다.

landing-first

domain.com/ 접속 시 www.domain.com으로 302 리다이렉트합니다. 신규 방문자가 먼저 랜딩 페이지를 보게 됩니다.

GET domain.com/
→ 302 Location: https://www.domain.com/home

GET www.domain.com/
→ 200 OK (마케팅 랜딩 페이지)

초기 마케팅 단계의 앱이나 SEO가 중요한 서비스에 적합합니다.

app.domain.com 패턴은 폐기되었습니다. naked 도메인은 항상 앱을 가리킵니다.


인프라 앱 예외

인프라 앱(*.modfolio.io)은 2-프로젝트 모델을 적용하지 않습니다. 단일 서브도메인으로 운영됩니다.

앱 도메인 비고
modfolio-connect login.modfolio.io SSO 전용
modfolio-admin admin.modfolio.io 내부 관리자
modfolio-dev dev.modfolio.io 개발자 도구
modfolio-on on.modfolio.io 커뮤니티
modfolio-press press.modfolio.io 퍼블리싱
modfolio-docs docs.modfolio.io 문서 (이 사이트)

인프라 앱은 외부 마케팅이 불필요하므로 별도 랜딩 사이트를 두지 않습니다.


도메인 맵

브랜드 앱 (2-프로젝트 모델 적용)

앱 앱 URL 랜딩 URL entryMode
Naviaca naviaca.com www.naviaca.com app-first
GistCore gistcore.com www.gistcore.com app-first
Fortiscribe fortiscribe.com www.fortiscribe.com landing-first
KeepNBuild keepnbuild.com www.keepnbuild.com landing-first
Worthee worthee.io www.worthee.io landing-first
Amberstella amberstella.com www.amberstella.com landing-first
Munseo munseo.com www.munseo.com landing-first
Sincheong sincheong.com www.sincheong.com landing-first
Umbracast umbracast.com www.umbracast.com landing-first

그룹 포털

Works, LS, Axiom, Studio 각 그룹은 독립 포털 도메인을 보유합니다.


DNS 설정 패턴

모든 도메인은 Cloudflare DNS를 통해 CF Pages에 연결됩니다.

앱 도메인 (naked)

# naviaca.com → CF Pages 프로젝트 "naviaca"
naviaca.com.    CNAME   naviaca.pages.dev.    (proxied)

랜딩 도메인 (www)

# www.naviaca.com → CF Pages 프로젝트 "naviaca-landing"
www.naviaca.com.    CNAME   naviaca-landing.pages.dev.    (proxied)

인프라 서브도메인

# login.modfolio.io → CF Pages 프로젝트 "modfolio-connect"
login.modfolio.io.    CNAME   modfolio-connect.pages.dev.    (proxied)

모든 CNAME 레코드는 Cloudflare 프록시(오렌지 클라우드)를 활성화합니다. 이를 통해 SSL 자동 발급, DDoS 보호, 캐시가 적용됩니다.


CF Pages 프로젝트 명명 규칙

유형 Pages 프로젝트명 예시
브랜드 앱 {앱이름} naviaca
브랜드 랜딩 {앱이름}-landing naviaca-landing
인프라 앱 modfolio-{기능} modfolio-connect

배포 설정 상세는 배포 가이드를 참조하세요.


다음 단계

ESC

검색어를 입력하세요