# 링크에 내 도메인 쓰기

링크는 `acme.<링크 도메인>` 같은 프로젝트의 링크 호스트에 있습니다. `go.example.com`처럼 소유한 도메인에서도 제공할 수 있습니다. 도메인이 활성화되면 모든 짧은 URL과 QR 코드가 그 도메인을 쓰고, 링크는 Mocco 호스트에서도 계속 동작합니다.

프로젝트에는 링크 도메인을 하나 둘 수 있습니다. 추가, 다시 확인, 제거는 소유자와 관리자만 할 수 있고, 멤버는 볼 수만 있습니다.

## 1. 시작하기 전에

- 워크스페이스에서 **딥링크**를 켜고, **링크 호스트**에서 프로젝트의 **서브도메인**을 정하세요([딥링크 개요](https://www.mocco.club/docs/ko/articles/xz8btr-overview#3-링크-호스트-정하기) 참고). 내 도메인은 같은 링크를 제공하므로 Mocco는 서브도메인을 먼저 정하게 합니다.
- `go.example.com`이나 `link.example.com`처럼 다른 용도로 쓰지 않는 호스트 이름을 고르세요. 그 호스트의 모든 경로를 Mocco가 맡습니다.

## 2. 도메인 추가하기

**딥링크 → 설정**에서 **내 도메인**을 찾습니다. `https://`나 경로 없이 `go.example.com` 같은 호스트 이름을 입력하고 **도메인 추가**를 누릅니다. 다른 프로젝트가 이미 쓰고 있는 경우처럼 추가할 수 없으면 Mocco가 바로 알려 줍니다.

## 3. DNS 레코드 만들기

도메인의 DNS를 관리하는 곳에서 Mocco가 보여 주는 레코드를 만듭니다.

- `_mocco-challenge.<호스트 이름>`에 `mocco-verify-…` 토큰을 값으로 하는 `TXT` 레코드. 도메인이 내 것임을 증명합니다.
- 호스트 이름에 Mocco가 보여 주는 대상을 가리키는 `CNAME` 레코드(호스팅된 Mocco에서는 `cname.vercel-dns.com`). `example.com` 같은 루트 도메인이라면 `A` 레코드.

레코드와 DNS 제공업체별 방법은 헬프 센터 도메인과 같습니다. 헬프 센터 가이드의 [자체 도메인 사용하기](https://www.mocco.club/docs/ko/articles/im56b3-help-center#dns-예시)에 있는 DNS 예시를 보세요. Cloudflare에서는 CNAME의 **Proxy status**를 **DNS only**(회색 구름)로 두세요.

## 4. 활성화될 때까지 기다리기

도메인은 **DNS 대기 중**, **인증서 발급 중**, **활성** 순으로 바뀌고 페이지는 저절로 갱신됩니다. Mocco는 1분 안에 TXT 레코드를 찾아보고, 이후 점점 간격을 늘려 7일 동안 찾습니다. **다시 확인**을 누르면 지금 다시 찾고 7일을 새로 시작합니다. 도메인이 확인된 뒤 인증서 발급은 보통 몇 분 걸립니다.

**활성**이 되면:

- **짧은 URL과 QR 코드**가 내 도메인을 씁니다(`https://go.example.com/spring`). **링크 호스트**의 **내 도메인**에 표시되고 바로 복사할 수 있습니다. Mocco 호스트로 이미 공유한 링크도 계속 동작합니다.
- **앱 열기**: 내 도메인도 앱이 링크로 열리게 하는 파일을 똑같이 제공합니다. 앱에도 이 도메인을 넣으세요. **링크로 앱 열기**에 있는 줄에 이제 내 도메인이 들어 있으니, 다시 복사해 앱의 연결된 도메인(iOS)과 인텐트 필터(Android)에 넣고 앱을 배포하세요. [링크로 앱 열기](https://www.mocco.club/docs/ko/articles/ikc6rm-open-the-app)를 참고하세요. iOS의 "앱에서 열기"는 계속 Mocco 호스트를 쓰므로 도메인을 하나 더 둘 필요는 없습니다.

이때 TXT 레코드는 지워도 되지만 CNAME이나 A 레코드는 남겨 두어야 합니다.

## 도메인 제거하기

**제거**를 누르고 확인하면 그 도메인에서 링크 제공을 바로 중단합니다. 짧은 URL은 Mocco 호스트로 돌아가고 링크도 그곳에서 계속 동작하지만, 내 도메인으로 공유한 링크와 QR 코드는 더 이상 열리지 않습니다. 더 이상 쓰지 않을 때만 제거하세요.

## 에이전트로 하기

Mocco에 연결된 에이전트에게 딥링크 설정을 허용하고 워크스페이스가 에이전트의 변경을 허용하면, 에이전트가 링크 도메인을 대신 추가하고 다시 확인하고 제거할 수 있습니다(`mocco_domains_add`, `mocco_domains_recheck`, `mocco_domains_remove`). 변경할 때마다 확인을 받습니다.
