
我正在嘗試使用A
記錄將我的網域重定向到我擁有的單獨網域。這個過程在 DigitalOcean Droplet 上運作得很好——我只需在 A 記錄中新增它們的 IPv4 位址,請求就會直接到達 Droplet 託管的任何內容。
然而,我嘗試向其發送請求的網站是透過共享主機運行的,因此我透過ping 我的網站獲得的IP 位址實際上是一個更廣泛的IP 位址,它不會連結到該網站,而是任何訪問者的登陸頁面使用託管該網站的伺服器。
我在嘗試使用 GitHub Pages/Cloudflare 頁面網站時遇到了相同的情況 - 只是 404,因為我可能正在查詢底層伺服器,而不是它們所服務的網頁。
我的問題分為兩部分:
- 為什麼這適用於 DigitalOcean 而不是 GitHub/Cloudflare?我假設 Droplet 也是共享託管,但也許不是...?
- 有沒有其他方法可以進行重定向/託管頁面,而無需購買整個單獨的 Droplet?
答案1
如何為任何共享主機設定 A 記錄?
您A
為共享主機設定記錄的方式與為任何其他主機設定記錄的方式相同,沒有區別,您使用正確的 IP 位址即可完成。
但那裡有幾個問題,你可能問了錯誤的問題:
除非共享託管平台明確支援為現有託管計劃添加附加/自訂網域,並且您已在託管計劃中註冊了新網域,否則該平台實際上不會識別您的附加域。
通常,共享平台需要配置為將網域名稱與特定帳戶相關聯,否則將無法正確回應,如顯示的通用登錄頁面所證明的那樣。我想共享託管平台不會為您提供“正確的IP位址”
A
供您首先在您的記錄中使用,因為他們將使用 CDN 服務和/或希望能夠隨意更改 IP,而不破壞您的託管。 (通常他們會建議設定一筆CNAME
記錄而不是一筆A
記錄,但問題是 CNAME 不能用於裸域/頂點。
這個過程在 DigitalOcean Droplets 中運作良好。為什麼這適用於 DigitalOcean 而不是 GitHub/Cloudflare?我假設 Droplet 也是共享託管,但也許不是...?
可能是因為您從未在 Droplet 上配置預設登入頁面。當您沒有明確設定登陸頁面時(用網頁伺服器術語來說:“預設虛擬主機”)第一個/唯一的網站將成為始終顯示的預設網站。
該網站不僅會在使用正確的網站名稱時顯示,還會在使用伺服器的裸 IP 位址時顯示,或在任何隨機、未知的網域名稱指向您的伺服器時顯示使用 IP 位址。
有沒有其他方法可以進行重定向/託管頁面,而無需購買整個單獨的 Droplet?
在您現有的 Droplet 上使用基於名稱的虛擬主機。