Domain-Name-System
更改 A 記錄和 CNAME 記錄
目前,我正在
LAMP
為我的登錄頁面頁面、Web 應用程序和 API 使用配置。現在我想將這些東西拆分到多個虛擬伺服器(VS)中。我不確定網路設置,在弄亂我所有的 DNS 配置之前,我想了解我是否要讓我的配置崩潰。登錄頁面託管在
second level domain
(例如myurl.com
),Web 應用託管在較低級別的域app.myurl.com
,API 託管在api.myurl.com
. 我還有一個預覽域:preview.myurl.com
,用於測試。由於所有內容都託管在同一個 VS 上,因此我目前還有四個不同的文件夾(
landing
、api
、webapp
、preview
),它們充當每個子域的“虛擬主機”。我的 DNS 配置如下所示:
myurl.com. A 300 123.123.123.123 www.myurl.com. CNAME 300 myurl.com. api.myurl.com. CNAME 300 myurl.com. app.myurl.com. CNAME 300 myurl.com. preview.myurl.com. CNAME 300 myurl.com.
首先,我想將每個 CNAME 條目的數據更改為目前 VS 的實際 IP。所以它看起來像這樣:
myurl.com. A 300 123.123.123.123 www.myurl.com. CNAME 300 myurl.com. api.myurl.com. CNAME 300 123.123.123.123 app.myurl.com. CNAME 300 123.123.123.123 preview.myurl.com. CNAME 300 123.123.123.123
然後的想法是將每個子域指向正確的 VS。最初,所有較低級別的域(除了
www.
)仍將指向目前 VS,而登錄頁面的二級域(A
記錄myurl.com.
)將需要指向新IP
的新 VS。問題:
- 這些更改是否會影響目前 Apache 伺服器將流量分配到每個子文件夾(即
landing
、api
、webapp
、preview
)的方式?如果是這樣,即使所有IP
地址都保持不變?- 為了進行測試,我是否可以只更改
data
for 的值preview.myurl.com.
而不冒損害其餘部分的風險?- 一旦所有較低級別的域(例如 api.myurl.com)都指向 VM 的 IP,我是否可以將 的
A
值指向myurl.com.
不同的 IP 而不會影響其他較低級別的域(api
、、、app
)preview
?
如評論中所述,您將需要使用 A 記錄而不是 CNAME 記錄。CNAME 記錄將無法指向 IP 地址。
使每個站點正常工作的關鍵是為您的 Apache 配置中的每個虛擬伺服器正確指定 ServerName。
使用
A
記錄指向子域myurl.com. A 300 123.123.123.123 api.myurl.com. A 300 123.123.123.123 app.myurl.com. A 300 123.123.123.123 preview.myurl.com. A 300 123.123.123.123 www.myurl.com. CNAME 300 myurl.com.