• English
  • Vercel & DNSPod

    Domains are registered on Tencent Cloud. DNS goes through Tencent Cloud DNSPod. This page records the workflow for connecting both Vercel projects to DNSPod.

    Two independent Vercel projects

    The main site (arsvine-realm) and the documentation site (arsvine-docs) must be independent Vercel projects. They bind different subdomains and do not share configuration.

    Main site

    ItemValue
    Framework PresetOther
    Install Commandpnpm install
    Build Commandpnpm build
    Start Commandpnpm start (uses custom server.js)
    Node.js24.x (aligned with package.json#engines.node)

    Documentation site

    ItemValue
    Framework PresetOther
    Install Commandpnpm install
    Build Commandpnpm build
    Output Directorydoc_build
    Node.js22.x

    The docs site uses vercel.json to declare buildCommand / outputDirectory / installCommand / framework: null explicitly so Vercel skips framework auto-detection.

    Vercel domain binding

    1. Log in to Vercel; open the target project
    2. Settings → Domains → Add arsvine.com / docs.arsvine.com
    3. Vercel assigns a CNAME target (one per project, looking like cname.vercel-dns.com as a subdomain)
    4. Vercel auto-provisions a Let's Encrypt certificate

    Tencent Cloud DNSPod records

    Log in to the DNSPod console, pick arsvine.com under "Domain records", and add two CNAMEs:

    Host recordRecord typeValueTTL
    @CNAMEmain-site CNAME target from Vercel600
    docsCNAMEdocs-site CNAME target from Vercel600

    An empty host record (@) means the apex domain. Use docs, blog, etc. for subdomains.

    Wait tens of seconds to a few minutes for DNSPod to propagate. Refresh the Vercel domain page until it shows Valid Configuration.

    Verification

    # Verify resolution from a local terminal
    nslookup docs.arsvine.com
    dig docs.arsvine.com CNAME +short

    Both records should resolve to the Vercel-provided CNAME target.

    HTTPS

    • Vercel auto-issues and renews Let's Encrypt certificates
    • DNSPod does not participate in certificate issuance; it only handles resolution
    • Do not share a single Vercel project between the main site and the docs site

    Rollback

    • Vercel → Deployments → select an older deployment → Promote to Production
    • COS resource rollback: node --env-file=.env.local scripts/assets-publish.mjs --rollback <version> writes the current.json pointer back (see asset-pipeline)