首頁 WordPress 教學 WordPress 架站:網域的 DNS 設定指南(DNS是什麼?/你需要設定嗎?)

WordPress 架站:網域的 DNS 設定指南(DNS是什麼?/你需要設定嗎?)

網域和主機在兩家不同的廠商時必看

發佈日期: 上次更新: 2 留言 1.7K 次瀏覽
什麼是 DNS

為什麼要設定網域的 DNS?

帶路姬自己也不是工程師,每當我去搜尋這類的文章時,總是看到一堆無字天書… 所以,這篇文章,帶路姬會盡量白話一點的來說明,希望大家在看完文章後,能夠判斷自己是不是需要設定 DNS,以及如何設定自己的網域的 DNS。

首先,如果你在網址列輸入你的網址後,看到下圖這個錯誤訊息之類的,無法連上你的網站時,最可能發生的問題就是,網域的 DNS沒有設定好。

No DNS Setup
沒有設定好網域的 DNS時,網站是打不開的。

還有下面幾種情況,都有可能需要設定 DNS:

  1. 雖然帶路姬在網域和主機一起買還是分開買?一文中,苦口婆心建議第一次架站的新手朋友,網域盡量和主機一起購買,就可以避開這個設定網域的 DNS 的步驟,但是,有些人可能在認識帶路姬之前,網域已經和主機分開買好了,這時你會需要設定網域的 DNS,才能連到主機上的網站。
  2. 有的主機商和 Cloudways 主機一樣,本身是沒有銷售網域的,所以,你可能已經跟著帶路姬的教學,到 Namecheap.com 買好網域,這時你也需要設定網域的 DNS,網域才會連到 Cloudways 主機上的網站。
  3. 你可能正在幫網站搬家換主機,網站的內容已經從 A 主機搬到 B主機,這時網域也一定要重新設定 DNS,指向 B主機的 IP位址,網域才會連上 B主機上的網站。

網域連線到主機的流程

在學習如何設定 DNS 之前,我們得先來了解網域是怎麼連到網站的?

因為網域和主機可能是分別在不同的地方買的,所以網域商這邊一定不會知道你的主機在哪裡?網域應該連到哪裡去?這時,我們就需要設定網域的 DNS,藉此來告訴網域商,我們的主機的位置。

網路世界裡的主機何其多,為了能清楚的辨識主機,每個主機都會有一個獨特的地址,也就是「IP 位址」,只要在網域的 DNS 設定中,填入主機的 IP 位址,這樣網域就知道要連到哪個主機,去找該主機上「你的網址的網站」。

上面說的是個大概的概念,實務上,流程稍微再複雜一點點,下圖中,當從你輸入網址按下 Enter 的那刻起,會經過下面的流程:

  1. 網域會先看看 DNS(網域名稱伺服器 — 列出網域名稱與對應的主機IP) 的設定,看看有沒有設定某個主機商的 NS(名稱伺服器 — 列出網域與對應的主機 IP)。
  2. 如果有找到 NS,那就會由這個主機商的 NS 去搜尋他的網站清單,看看你的網站在他管轄裡的哪個主機上。
  3. 一旦找到紀錄的話,NS 就會回傳你的網站所在的主機的 IP位址給 DNS。
  4. 這樣網域就可以順利連到主機上的網站了!

如果這樣聽起來很抽象的話,我們來舉個生活上的例子好了!假設今天你要去一家五星級飯店入住,但是你不知道你的房號:

  1. 你會先去櫃檯告知他你有訂房,想查詢房號來入住,櫃檯人員會先查查看你所屬的公司是否在合作清單內(是否有NS)。
  2. 如果合作清單中有找到你的公司(NS),那就再從公司提供的入住名單搜尋,看看有沒有你的名字在入住名單內。
  3. 如果公司的入住名單中有找到你的名字的話,那櫃臺人員就會找到你的房號 (IP位址)。
  4. 這樣你就可以順利入住你的房間了。

雖然這個例子沒辦法完全對上技術面的流程,但是概念是類似的,總之,網域找到 IP位置的流程,會經過兩次的搜尋,而不是一次到位,所以在下圖中,當我們要設定網域的 DNS時,其實有兩種方式可以設定,第一種是填入主機商提供的 NS,讓 NS 代為找到 IP位址,另一種則是自己找到 IP位址填進去。

網域如何連到主機上的網站
網域如何連到主機上的網站

這兩種方式有沒有差別呢?其實是有一點差別的,舉例來說,假如我把網站放在 A2 Hosting 主機上,我如果在網域 DNS 設定的地方,留下 A2 Hosting 主機提供的 NS 紀錄,我就不用管網站實際上所在的 IP位址是什麼,而當未來主機商可能偶爾需要更新主機,並且變動 IP位址時,我也不用特別去改我的 DNS紀錄,反正 NS會自動找到正確的 IP位址。相反的,如果明明可以設定 NS就好,我卻直接設定 IP位址的話,那如果主機商某天寫信給你,通知你你的網站的 IP位置會在下週改變時,你就一定要記得去網域設定的地方,把 IP位址改成新的,否則網站就會斷線了。

網域的 DNS 怎麼設定?

方式一、設定 NS (NameServers/名稱伺服器)

通常在你買完主機時,尤其是帶路姬推薦的 BluehostA2 Hosting 主機,主機商都會寄一封歡迎信件給你,在信件中就會列出主機商的 NameServers。NameServers長得很像網址,通常不會只有一個。例如:

  1. Bluehost 主機的 NS 就是 ns1.bluehost.com與 ns2.bluehost.com。
  2. A2 Hosting 主機的 NS就是 ns1.a2hosting.com、ns2.a2hosting.com、ns3.a2hosting.com、ns4.a2hosting.com。

找到 NS 紀錄後,我們就要去網域商那邊設定,看你的網域是在哪裡買的,就到同一個網站,登入你購買網域時的帳號,進入網域管理介面,通常在那裡,可以找到設定 NS 的地方。

這裡帶路姬以 Namecheap.com 為例,跟著下面的步驟,就可以設定好 NS:

  1. 登入 Namecheap 後,點選左邊的 Domain List
  2. 然後在右邊你的網域的地方,點選 MANAGE 來管理網域。
  3. 先確認你在 Domain 頁籤的地方。
  4. 在下面 NAMESERVERS 的地方,下拉選單處選擇 Custom DNS
  5. 填入你的主機商提供的 NS,如果欄位不夠,可以點選 ADD NAMESERVER連結來增加更多筆資料。
  6. 最後點選綠色勾勾儲存就完成了。

注意:DNS的修改,需要 24~48小時才會完全生效,這篇文章的最下面,帶路姬會教你怎麼看設定是否成功喔!

方式二、直接設定 DNS 紀錄

使用這個方式的話,首先當然是要先去主機的後台,找到你的主機的 IP位址,然後再到網域商的管理介面,把這個 IP位址加到 DNS 設定中。雖然只是簡單的一句話,但是因為每個主機的後台介面不同、網域商的管理介面也不同,這些會造成比較大的挑戰。下面帶路姬就示範如何找到 Bluehost 主機A2 Hosting主機Cloudways 主機的 IP位址,並且教你們到 Namecheap.com 設定 DNS。

先找到你的主機的 IP位置
範例一、如何找到 Bluehost 主機的 IP位址

如果你的網站在 Bluehost 主機,網域在其他地方買的,請跟著下面這個步驟來找到 Bluehost 主機的 IP位址:

  1. 登入 Bluehost 帳,再點選左邊的 Advanced (進階)。
  2. 右手邊 Shared IP Address 就是你的主機的 IP 位址囉!請把他複製起來備用,等等再到你的網域商那邊去設定 DNS。
範例二、如何找到 A2 Hosting 主機的 IP位址

如果你的網站在 A2 Hosting 主機,網域在其他地方買的,請跟著下面這個步驟來找到 A2 Hosting 主機的 IP位址:

  1. 登入 A2 Hosting 主機的帳號,再點選右邊的 cPanel Login(登入cPanel管理介面)。
  2. 在 cPanel 管理介面,右手邊的 Shared IP Address 就是你的主機的 IP 位址!請把他複製起來備用,等等再到你的網域商那邊去設定 DNS。
範例三、如何找到 Cloudways 主機的 IP位址

如果你的網站在 Cloudways 主機,網域在其他地方買的,請跟著下面這個步驟來找到你的 Cloudways 主機的 IP位址:

  1. 登入 Cloudways 主機的帳號,並且點選上方的 Applications (應用程式)。
  2. Applications 頁面會列出你曾經建立過的所有網站,點選一下你想連線的網站來進入編輯。
  3. 在 ACCESS DETAILS (連線資訊) 的地方,右手邊的 Public IP 就是你的網站所在的主機 IP 位址。請把他複製起來備用,等等再到你的網域商那邊去設定 DNS。
到你的網域管理介面去設定 DNS 紀錄

所需時間: 10 分.

每家網域商的控制台介面不同,設定位置也不同,不過,通常是要先找到你買的網域,點選 MANAGE 之類的按鈕進去管理,並且找到 DNS Settings 之類的,來進行設定,下面帶路姬示範 Namecheap.com 的設定方式。

  1. 先登入 Namecheap.com 帳號,並且點選左邊的 Domain List 來進入網域清單。

    namecheap.com 設定NS1

  2. 右邊找到你想管理的網域,點選 MANAGE 來開始管理。

    namecheap.com 設定NS1

  3. 確定下方的 NAMESERVERS 是選擇 Namecheap Basic DNS,這樣才可以使用 Namecheap 內建的 DNS 設定系統,再點選 Advanced DNS按鈕。

  4. 點選 ADD NEW RECORD 來增加新的 DNS 紀錄,總共會需要增加兩次。

  5. 請跟著參考的畫面,新增兩筆記錄,每筆紀錄新增玩,記得要點選綠色勾勾儲存。

    第一筆:Type (紀錄種類)選擇 A Record(A紀錄),Host 處填入「@」(代表整個網域),Value 處貼上你在主機端找到的 IP位址。
    第二筆:Type(紀錄種類)選擇 CNAME Record (CNAME 紀錄),Host 處填入「www」,Value 處寫上你的主要網址。

注意:
1. DNS的修改,需要 24~48小時才會完全生效,下面帶路姬會教你怎麼看設定是否成功喔!
2. 除了這兩筆資料,如果你有其他的 A Record(A紀錄)也是設定「@」(整個網站),請把他截圖留存備用後刪除。
3. 如果你有其他的 CNAME Record,也是設定「www」,也請把他截圖留存備用後刪除。
4. 如果你有其他的 DNS 紀錄,像是 TXT Record、MX Record 等等,他們應該與網站連線沒關係,如果你不確定他們的用途,可以先不要刪。

為什麼要用 A紀錄?

在上面的 DNS設定中,「A Record」這種類型的紀錄,是特別用在指向某個 IP 位址的;Host 處寫的「@」,是指「整個網域」,所以,第一行的意思就是:我們利用這個 A紀錄,來使整個網域(範例中是1daywp.com) 都連線指向我們指定的 IP位址 (162.159.136.54)。

為什麼要用 CNAME紀錄?

在上面的 DNS設定中,「CNAME Record」這種類型的紀錄,是特別用在「對應到某個網址」時,所以,上面第二行的意思就是:我們利用這個 CNAME紀錄,來讓 www.1daywp.com 對應到 1daywp.com,這樣一來,如果你的訪客在網址列輸入 https://www.1daywp.com,他會被轉向 https://1daywp.com。

要怎麼看 DNS設定是否正確?

上面有提到,DNS設定需要24~48小時才能完全傳播到全世界各地,除了一直到瀏覽器輸入你的網址,試試看連線成功沒以外,其實還有一個測試的方式,可以查看 DNS 的傳播狀況。

帶路姬自己是常到 What’s my dns 的網站查看:

  1. 填入你的網域
  2. 選擇你要檢測什麼類型的紀錄
  3. 點選 Search 來進行搜尋

當全世界各地都連到你指定的 IP位址,都呈現綠色勾勾時,表示全部都成功生效了喔!

要怎麼設定子網域的 DNS呢?

這也是很多新手朋友常問的問題之一,在網域和網址一樣嗎?網域多少錢?網域和主機一起買還是分開買?一文中,帶路姬有介紹了網址的結構,裡面就有提到,許多人想建立和原本的網域有關聯的第二個網站,這時候可以考慮用子網域來當主要網址,例如:blog.wpointer.com或 shop.wpointer.com等等。

建立子網域其實非常簡單喔!只需要到網域的管理介面,新增一筆給子網域用的 DNS紀錄就可以了喔!下面帶路姬以 Namecheap.com 為例,建立一個 shop.1daywp.com給大家參考。

  1. 跟著上面的步驟進到 Advanced DNS的地方,先點選 ADD NEW RECORD 來新增一筆 DNS紀錄。
  2. Type 類型的地方選擇 A Record (A紀錄)
  3. Host 的地方填入「shop」。
  4. Value 的地方,填入你的網站所在的主機的 IP位址
  5. 點選綠色勾勾儲存就可以囉!

上面這筆紀錄的意思,你猜的到了嗎?就是我們透過新增這筆 A紀錄,來讓 shop.1daywp.com這個網址,連線到 162.159.136.54 這個主機上的 shop.1daywp.com 這個網址的 WordPress網站。

你只要在你的主機上,已經架設好了shop.1daywp.com 這個網址的 WordPress網站,當你新增的 DNS生效時,你就可以在網址列輸入 shop.1daywp.com,順利的打開你的主機上的網站了!

如何在 namecheap.com 設定子網域連線到主機的 IP位址

如果你使用虛擬共享主機,例如 Bluehost 主機與 A2 Hosting 主機,需要再多做這個步驟

設定子網域時,除了上面的步驟可以讓子網域連線到對的主機 IP位址,另外還要記得要到主機商的後台建立子網域,這樣你在主機上,才能建立第二個網站、建立複製網站、建立測試網站等等喔。

總結

DNS 設定真的是帶路姬的社團中最常見的萬年考古題之一,即使許多人跟著帶路姬的五天自學衝刺班學習架設第一個網站時,可能可以透過網域和主機一起買,先避開了這個議題,但是,如果有一天要幫網站搬家換主機,就仍然得面對它,希望帶路姬今天的說明,能讓大家稍微有點概念了,如果你的網域商的控制台介面真的讓你一頭霧水,設定上仍然遇到問題的話,歡迎私訊到帶路姬的粉絲頁,請求付費協助喔!

留言給帶路姬吧!

2 留言

陳和明 2022-07-19 - 9:05 pm

您好
想請教您
hinet 購買網域 (hibox 配合收信使用)
近日用wordpress 架設網站配合bluehost虛擬主機
將hinet DNS 指向 bluehost 後 hi box 便沒辦法收發信
不知是否可指導如何解決這個問題

回答
Tc 2023-05-16 - 6:23 pm

多謝你,帶路姬!

回答
訂閱電子報 (週四寄)
帶路姬的文章重質不重量,所以請訂閱我的電子報,以確保會收到更多優質教學好文喔!
聯盟分潤聲明

此站內容為Erin的真實架站經驗分享,部分推薦的商品有參加 聯盟計畫,您若點選文中的連結而購買商品,Erin可以從中獲取一點分潤。不過Erin 100%保證,只誠懇推薦自己親身試用過的好東西。(什麼是聯盟計畫?)

支持帶路姬

假如你很喜歡帶路姬的文章,希望鼓勵帶路姬繼續寫作,幫助WordPress新手,與推廣WordPress,不如贊助一下帶路姬吧!

追蹤帶路姬
帶路姬人氣

網站成立:2018/05/01
總瀏覽量:2,614,479(2024/2/2)
總訪客量:626,454 (2024/2/2)

© WordPress 網站帶路姬 2018~2024 版權所有 |  本站使用 Soledad主題 + Elementor Pro 編輯器   | 推薦使用 Cloudways主機

★ 完全免費的影音+圖文教學 ★

帶路姬陪你用五天的下班時間
做好第一個 WordPress 網站

想完整的學好基礎嗎?快來看看吧!😊
close-link