
我有一個新網域 (my-future-domain.com),我試著用它來取代我目前的網域 (my-current-domain.com)。我在 Ubuntu 上使用 DigitalOcean Nginx 伺服器,並相信我應該採取以下步驟,以便用我的新網域替換當前網域,但我之前從未處理過網域遷移,這就是為什麼我希望獲得有關這些步驟的回饋我打算帶。
1)將A記錄指向與目前伺服器關聯的IP,並將CNAME指向A記錄
A= my-future-domain.com 定向到 100.200.1.90
別名記錄= www.my-future-domain.com 是 my-future-domain.com 的別名
2)使用 certbot 為 my-future-domain.com 和 www.my-future-domain.com 產生 SSL
sudo certbot --nginx -d my-future-domain.com -d www.my-future-domain.com
3)2: Redirect - Make all requests redirect to secure HTTPS access.
在 certbot 提示字元下選擇
4)server_name
為新網域新增區塊並模仿目前伺服器區塊
當前區塊:
#This server block will redirect http:// to https://www.my-current-domain.com
server {
listen 80;
listen [::]:80;
server_name my-current-domain.com www.my-current-domain.com;
return 301 https://www.my-current-domain.com$request_uri;
}
#This server block will redirect https://my-current-domain.com to https://www.my-current-domain.com (expecting that you have a certificate for my-current-domain.com as well as www.my-current-domain.com
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
include snippets/ssl-www.my-current-domain.com.conf;
include snippets/ssl-params.conf;
server_name my-current-domain.com;
return 301 https://www.$server_name$request_uri;
}
新網站區塊:
#This server block will redirect http:// to https://www.my-future-domain.com
server {
listen 80;
listen [::]:80;
server_name my-future-domain.com www.my-future-domain.com;
return 301 https://www.my-future-domain.com$request_uri;
}
#This server block will redirect https://my-future-domain.com to https://www.my-future-domain.com (expecting that you have a certificate for my-future-domain.com as well as www.my-future-domain.com
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
include snippets/ssl-www.my-future-domain.com.conf;
include snippets/ssl-params.conf;
server_name my-future-domain.com;
return 301 https://www.$server_name$request_uri;
}
5)將流量從 my-current-domain.com 和 www.my-current-domain.com 重定向到 www.my-future-domain.com。我是否要更新第 4 步中的“當前區塊”?
6)刪除 my-current-domain.com 的 A 和 CNAME 記錄
我可能缺少什麼嗎?
答案1
DNS 看起來正確。為了簡化 DNS 請求,您可以將 my-current-domain.com 也設定為 www.my-future-domain.com 的 CNAME,而不僅僅是 www.my-current-domain.com。在舊網域過期之前,您不需要刪除 DNS;將其留在原處是無害的。 (透過將其放在適當的位置,它也將使仍然引用舊網域的任何內容受益。重定向應該處理其餘的事情。)
我將按如下方式配置您的伺服器區塊。
server {
listen 80;
listen [::]:80;
server_name my-future-domain.com www.my-future-domain.com my-current-domain.com www.my-current-domain.com;
return 301 https://www.my-future-domain.com$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.my-future-domain.com;
…
您可以透過組合兩個伺服器區塊來清理程式碼。
如果你追求目前的計劃,如果有人要求http://my-current-domain.com,他們將被重定向到https://www.my-current-domain.com然後再次重定向到https://www.my-future-domain.com。您可以透過在初始伺服器區塊中執行這一切來節省重定向。