Netlify 自訂網域設定教學:DNS 設定與 SSL 憑證【完整步驟】

Netlify 自訂網域設定教學:DNS 設定與 SSL 憑證【完整步驟】

網站部署到 Netlify 後,拿到一個 xxx.netlify.app 的網址。看起來還可以,但如果是正式網站,總是想要有自己的網域(像是 www.example.com)。

好消息是:Netlify 免費方案就支援自訂網域,而且 SSL 憑證自動幫你處理。這篇文章會一步步教你怎麼設定。

為什麼要用自訂網域?

先說說自訂網域有什麼好處。

netlify-default-vs-custom-domain-comparison

專業形象

www.mybrand.commybrand.netlify.app,哪個看起來更專業?

對客戶來說,自訂網域代表這是認真經營的網站,不是臨時的測試頁面。

品牌一致性

如果你的 email 是 [email protected],網站當然也要是 www.mybrand.com

SEO 考量

自訂網域對 SEO 有一定幫助:
- 網域年齡可以累積
- 品牌關鍵字在網域中
- 換平台時可以保留網址

搬家方便

如果之後想從 Netlify 搬到其他平台,自訂網域可以直接帶走,訪客完全無感。

mybrand.netlify.app 的話,搬家就要換網址,所有連結都要重新建立。

準備工作

開始設定之前,確認這些事。

preparation-checklist-domain-dns-netlify

你需要什麼

  1. 一個已部署的 Netlify 網站
    - 如果還沒部署,可以用 Netlify Drop 拖曳部署快速上線
    - 或看完整教學 Netlify 完整指南

  2. 一個網域
    - 可以在 Namecheap、GoDaddy、Gandi、Google Domains 等買
    - 價格從幾十塊到幾百塊台幣/年不等

  3. 網域 DNS 管理權限
    - 登入網域註冊商的後台
    - 找到 DNS 管理的地方

還沒有網域?

推薦的購買地方:

註冊商 特色 .com 大約價格
Namecheap 便宜、介面好 $10-12/年
Cloudflare 成本價、速度快 $9-10/年
Gandi 隱私保護好 $12-15/年
Google Domains 簡單好用 $12/年

理解 DNS 基礎

在開始設定前,先搞懂幾個名詞:

  • A Record:把網域指向一個 IP 地址
  • CNAME Record:把網域指向另一個網域(別名)
  • Name Server (NS):指定誰來管理這個網域的 DNS

Netlify 支援兩種設定方式:
1. 在原本的 DNS 加記錄(用 CNAME/A Record)
2. 把 DNS 整個交給 Netlify 管理(用 Netlify DNS)

DNS 設定方式一:CNAME/A Record

這是最常見的方式,不用把 DNS 整個搬走。

dns-cname-record-pointing-netlify

步驟一:在 Netlify 新增網域

  1. 登入 Netlify 後台
  2. 選擇你的網站
  3. 點「Domain settings」
  4. 在「Custom domains」區塊,點「Add custom domain」
  5. 輸入你的網域(例如 www.example.com
  6. 點「Verify」>「Add domain」

Netlify 會顯示這個網域需要設定 DNS。

步驟二:設定 www 子網域(CNAME)

如果你要用 www.example.com

  1. 登入你的 DNS 管理後台(Namecheap、GoDaddy 等)
  2. 找到 DNS Records 或 DNS Management
  3. 新增一筆 CNAME 記錄:
Type Host/Name Value/Points to TTL
CNAME www your-site-name.netlify.app 3600

your-site-name 換成你的 Netlify 網站名稱。

步驟三:設定根網域(A Record)

如果你要用 example.com(沒有 www):

有兩種方式:

方式 A:用 A Record(推薦)

新增 A Record 指向 Netlify 的 load balancer IP:

Type Host/Name Value TTL
A @ 75.2.60.5 3600

方式 B:用 ALIAS/ANAME(如果 DNS 支援)

有些 DNS 供應商支援 ALIAS 或 ANAME 記錄:

Type Host/Name Value TTL
ALIAS @ your-site-name.netlify.app 3600

步驟四:設定 www 轉址(建議)

通常我們會想讓 example.comwww.example.com 都能用,其中一個會轉址到另一個。

在 Netlify:
1. 在 Domain settings 同時新增 example.comwww.example.com
2. 點選其中一個設為「Primary domain」
3. 另一個會自動轉址過去

步驟五:等待 DNS 生效

DNS 修改需要時間生效,通常:
- 快的話:幾分鐘
- 慢的話:24-48 小時

可以用工具檢查 DNS 是否生效:

# 檢查 CNAME
dig www.example.com CNAME

# 檢查 A Record
dig example.com A

或用線上工具:DNS Checker

DNS 設定方式二:Netlify DNS

把整個 DNS 交給 Netlify 管理,設定更簡單。

netlify-dns-nameserver-auto-configured

什麼時候用 Netlify DNS?

優點
- 設定更簡單(自動設定)
- 支援 ALIAS Record
- CDN 優化
- 整合在同一個後台管理

缺點
- DNS 跟網站綁在一起
- 某些進階 DNS 功能可能沒有
- 搬家時要一起處理 DNS

設定步驟

  1. 在 Netlify 點「Domain settings」>「Add custom domain」
  2. 輸入你的根網域(example.com
  3. Netlify 會問要不要用 Netlify DNS,選「Set up Netlify DNS」
  4. Netlify 會給你 4 個 Name Server:
    dns1.p01.nsone.net dns2.p01.nsone.net dns3.p01.nsone.net dns4.p01.nsone.net
  5. 回到你的網域註冊商
  6. 找到 Name Server 設定
  7. 把原本的 Name Server 換成 Netlify 給的
  8. 等待生效(可能需要 24-48 小時)

驗證成功

Name Server 生效後,Netlify 會自動:
- 設定根網域和 www
- 申請 SSL 憑證
- 完成所有設定

你會在 Domain settings 看到綠色的「Netlify DNS」標籤。

SSL 憑證設定

Netlify 會自動幫你處理 SSL 憑證,讓網站有 HTTPS。

browser-https-green-lock-lets-encrypt

自動 SSL 的運作方式

  1. 你設定好 DNS 後
  2. Netlify 驗證網域指向正確
  3. 自動向 Let's Encrypt 申請憑證
  4. 憑證會自動更新(不用手動處理)

SSL 設定狀態

在 Domain settings 的 HTTPS 區塊可以看到狀態:

狀態 意思
Waiting on DNS propagation DNS 還沒生效
Provisioning certificate 正在申請憑證
Certificate issued 憑證已發行(完成)

常見 SSL 問題

問題:Certificate provisioning failed

原因:DNS 沒有正確指向 Netlify

解決:
1. 確認 DNS 設定正確
2. 用 dig 或 DNS Checker 確認生效
3. 點「Verify DNS configuration」重試

問題:Mixed content warning

原因:網頁中有 HTTP 的資源(圖片、CSS、JS)

解決:
把所有資源網址改成 HTTPS,或用相對路徑:

<!-- 不好 -->
<img src="http://example.com/image.png">

<!-- 好 -->
<img src="https://example.com/image.png">

<!-- 更好 -->
<img src="/image.png">

強制 HTTPS

Netlify 預設會自動把 HTTP 轉到 HTTPS。

如果沒有,在 Domain settings > HTTPS 開啟「Force HTTPS」。

常見問題排除

設定網域常遇到的問題。

warning-triangle-common-errors-solutions

問題一:DNS 一直沒生效

檢查方式

dig example.com A
dig www.example.com CNAME

可能原因
1. DNS 設定還沒儲存
2. TTL 還沒過期
3. 設定值打錯了

解決方法
1. 回到 DNS 管理確認設定存好了
2. 等待 24-48 小時
3. 仔細檢查有沒有打錯字

問題二:只有 www 能用,根網域不行

原因:根網域的 A Record 沒設或設錯

解決方法
1. 確認新增了 A Record 指向 75.2.60.5
2. 或改用 Netlify DNS(自動處理)

問題三:SSL 憑證申請失敗

可能原因
1. DNS 還沒完全生效
2. 有 CAA Record 限制

解決方法
1. 等 DNS 完全生效後重試
2. 檢查有沒有 CAA Record,如果有要加上 Let's Encrypt:

CAA 0 issue "letsencrypt.org"

問題四:網站可以存取但顯示其他網站

原因:DNS 指向錯誤的地方

解決方法
1. 確認 CNAME 指向的是你的 Netlify 網站
2. 確認 A Record 指向 Netlify 的 IP

問題五:子網域設定

想設定 blog.example.com

  1. 在 Netlify 建立一個新網站(部署部落格內容)
  2. 在 DNS 加入:
CNAME blog your-blog-site.netlify.app
  1. 在新網站的 Domain settings 加入 blog.example.com

問題六:Email 設定

設定網域後,email 還能用嗎?

答案:可以,但要注意。

如果你用 Netlify DNS:
1. 原本的 MX Record 要重新設定
2. 在 Netlify DNS 加入你的 email 服務的 MX Record

如果你只改 CNAME/A Record:
- Email 不受影響

進階設定

一些額外的設定選項。

settings-gear-advanced-options-list

Branch 子網域

Netlify 可以自動為 Git branch 建立子網域:

  • develop branch → develop.example.com
  • feature-x branch → feature-x.example.com

在 Domain settings > Branch subdomains 設定。

多個網域指向同一個網站

可以讓多個網域都指向同一個網站:

  1. 在 Domain settings 新增多個網域
  2. 選擇一個作為 Primary
  3. 其他網域會 301 轉址到 Primary

手動 SSL 憑證

如果你有自己的 SSL 憑證(例如公司購買的),可以手動上傳:

  1. Domain settings > HTTPS
  2. 點「Provide your own certificate」
  3. 上傳憑證檔案

但通常沒必要,Let's Encrypt 的免費憑證就夠用了。

常見問題 FAQ

設定網域要錢嗎?

Netlify 設定網域免費,免費方案就可以使用。你只需要付網域本身的註冊費(給 Namecheap、GoDaddy 等)。

可以用中文網域嗎?

可以,但要轉成 Punycode 格式。例如 例子.com 要寫成 xn--fsqu00a.com

DNS 最快多久生效?

快的話幾分鐘,慢的話 48 小時。Cloudflare 等 DNS 供應商通常比較快。

可以之後換網域嗎?

可以。在 Domain settings 移除舊網域,新增新網域就好。但要注意 SEO 影響,建議設定 301 轉址。

Netlify DNS 有流量限制嗎?

沒有。Netlify DNS 免費使用,沒有查詢次數限制。如果想了解其他費用項目,可以看 Netlify 費用計算指南

網域快到期了,Netlify 會通知嗎?

不會。網域續約是你跟網域註冊商的事,Netlify 不會提醒你。記得在註冊商那邊設定自動續約或提醒。

Netlify 網域設定重點整理與推薦方式

設定 Netlify 自訂網域不難,主要步驟:

  1. 在 Netlify 新增網域
  2. 設定 DNS(CNAME/A Record 或 Netlify DNS)
  3. 等待 SSL 憑證自動發行
  4. 測試確認可以存取

推薦的設定方式:
- 小型網站 → 用原本 DNS 的 CNAME/A Record
- 想要最簡單 → 用 Netlify DNS

設定好自訂網域,你的網站就更專業了。

想了解更多 Netlify 功能?看這篇 Netlify 完整指南


VibeFix 是專門幫助非工程師處理程式部署問題的服務。AI 幫你寫代碼,我們幫你上線。

網域設定搞不定?DNS 怎麼設都不對?讓 VibeFix 幫你處理

分享文章:
V

VibeFix 團隊

專門解決 AI Vibe Coding 後的疑難雜症,讓你的專案順利上線。

這篇文章有幫到你嗎?

如果還有問題,讓我們直接幫你解決!

聯繫我們