Amazon-Ec2

為什麼無法使用 www 前綴訪問我的網站

  • May 22, 2014

我知道這是一個古老的“業餘”問題,但我認為自己需要提出這個問題,因為我真的不知道發生了什麼。

***使用 www 前綴無法訪問我的網站…***實際上它有時有效,有時無效。如果我在沒有 www 的情況下訪問該網站,那麼它會突然開始使用 www。

在“做完我的作業”之後,我按照以下步驟來解決它:

  • 在我的域名服務提供商上,我添加了指向我的網站的 A 記錄和 C NAME 記錄,它看起來像這樣,我假設 GoDaddy 正在將 @ 解析為我的網址,因為我有時會訪問該網站:

在此處輸入圖像描述

  • 在我的虛擬主機配置文件(在我的例子中是 httpd-vhost.conf)我有這個結構:
NameVirtualHost *:80 
<VirtualHost *:80>
 ServerName www.example.com
 ServerAlias example.com

 DocumentRoot my_htdocs_path

 <Directory my_htdocs_path>
   Option Indexes FollowSymLinks MultiViews    
   AllowOverride All
   Order allow,deny
   allow from all
 </Directory>
</VirtualHost>

我有 4 個這樣的塊,它們都工作得很好,但最重要的一個!(墨菲定律的東西)。

這是怎麼回事?有人可以給我一個提示嗎?

其他有用資訊:

  • 執行 Amazon EC2
  • 我使用 Route53 作為子域名
  • 過去一切正常

好的,謝謝所有寫答案的人,你們幫助我進入了正確的軌道。該問題與 GoDaddy 和 Route53 上的重複條目有關。

我最終做了以下事情:

  • 在主螢幕上的 Godaddy 上,您在“啟動”域之前看到(“啟動”= 給打開設置的東西起的最糟糕的名稱,恕我直言)。然後將 NS 伺服器設置為 Route53 提供給我的伺服器,它們正好是 4,並且在下一張圖片中用黃色標記。 在此處輸入圖像描述
  • 我進入了這條記錄,並將GoDaddy 中的所有記錄添加到 Route53,你應該以這樣的結尾:

在此處輸入圖像描述

  • 最後,在 Godaddy 上我刪除了除 CNAME 條目之外的所有條目,我最初有 A、TXT 和 NS 條目。這樣現在只有 Route53 管理所有條目。

我能想到兩種解釋,都與 DNS 查找有關:

  • 可能是您正在使用的遞歸解析器之一在您創建 CNAME 之前記憶體了否定條目。它是否有效取決於您在特定時間碰巧使用的解析器。
  • 可能其中一個涉及的伺服器未正確處理與 CNAME 關聯的其他記錄。這可能意味著返回 CNAME 而沒有 A 記錄作為附加答案。但是在沒有 www 的情況下解析名稱將導致所需的 A 記錄被記憶體,只要它仍然被記憶體,它就會被包含為附加記錄。

nslookup您可以嘗試通過或等工具解析帶有或不帶有 www 的域名dig。嘗試使用不同的遞歸解析器,嘗試您的 ISP 提供的解析器以及一些公共解析器(8.8.8.8 和 8.8.4.4 是一個不錯的選擇)。

引用自:https://serverfault.com/questions/597442