如果我使用 www 和不使用 www 訪問網站有什麼區別?
我是一家軟體公司的網路開發人員,該公司為客戶開發網站。這些網站由第三方託管,因此我們無法完全控制它。
有一天,我們的一位客戶問我們,為什麼如果他們寫信給地址說:他們可以訪問他們的網站
www.example.com/
,但如果地址是,他們就無法連接,說:example.com/
?他們需要無論有沒有 www 都可以正常訪問網站。在沒有 www 的情況下訪問時,它不會返回 404 server not found。瀏覽器可以找到網站的伺服器,卻返回網站自身的404資源未找到錯誤頁面。這意味著沒有 www 的 url 指向網站內不存在的資源,但網站本身被找到。我仍然不明白為什麼www.example.com/
指向不同的資源而不是example.com/
. 我仍然不知道example.com/
指向哪裡。伺服器使用 apache-tomcat,網頁使用 servlet 和 Enfinity 框架提供服務。
我最初懷疑這與 DNS 有關。但現在我不太確定。你能指出我可能出錯的方向嗎?非常感謝你。
注意:我不知道這個問題是否適合發佈在伺服器故障上。如果離題,請轉移到適當的論壇。
這是一個 DNS 問題,但考慮到瀏覽器的工作方式,它也部分是瀏覽器/Web 伺服器問題。
您可以使用以下命令確定哪個是主要問題:
nslookup example.com nslookup www.example.com
如果輸出相同,則應查看 Web 伺服器。如果它們不同,您應該與負責您的 DNS 的人員交談。
域名系統
從 DNS 的角度來看,example.com 是一個 DNS 名稱,就像 www.example.com 是一個 DNS 名稱一樣。example.com 也是一個域,因為它包含其他 DNS 名稱(例如 www.example.com)。example.com 和 www.example.com 都可以有“A 記錄”(關聯的 IP 地址),這些 IP 地址甚至可能彼此不同。舉個例子:
example.com -> 1.1.1.1 www.example.com -> 2.2.2.2
主機名的“www”部分來自協議(HTTP,用於全球資訊網(WWW 或 www)服務)。您可能還擁有 ftp.example.com、mail 或 smtp.example.com 等。從邏輯上講,每個人都應該為所引用的協議提供服務,並且每個人都可以有不同的 IP 地址。
如今,HTTP 相當普遍,因此域管理員通常會讓 example.com 指向他們的 Web 伺服器的 IP 地址。
網路伺服器
另一個重要的部分是 Web 伺服器。Web 伺服器可以根據給定瀏覽器的主機名以不同的方式引導 Web 瀏覽器。這是 Web 瀏覽器提供的伺服器名稱或主機標頭。如何完成或修復這是一個配置問題,取決於您使用的 Web 伺服器,並且可能值得提出不同的問題。