为什么我的网站不能用www前缀访问

我知道这是一个古老而“业余”的问题,但是我觉得自己需要提出这个问题,因为我真的不知道发生了什么事情。

我的网站无法访问www前缀…实际上,它有时有效,有时它不。 如果我没有www访问网站,那么它会突然开始与www工作。

在“做功课”之后,我按照下面的步骤来解决:

– 在我的域名服务提供商中,我添加了一个A Record和一个C NAMElogging,指向我的网站,字面上看起来像这样,我假设GoDaddy正在parsing@到我的url,

在这里输入图像说明

– 在我的虚拟主机configuration文件(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作为子域名
  • 一切正常工作

我可以想到两个解释,都涉及DNS查找:

  • 可能是您正在使用的recursionparsing器之一已经在创buildCNAME之前caching了否定条目。 是否有效取决于哪个parsing器在那个特定的时间恰好被使用。
  • 可能有一个涉及的服务器没有正确处理与CNAME相关的其他logging。 这可能意味着CNAME被返回时没有Alogging作为附加的答案。 但是如果没有使用www来parsing这个名字,将会导致需要的Alogging被caching,只要它保持caching,它就被作为附加logging包含进来。

您可以尝试使用nslookupdig等工具来parsing带有和不带www的域名。 尝试使用不同的recursionparsing器,尝试由您的ISP提供的以及一些公共parsing器(8.8.8.8和8.8.4.4是一个好的select)。

好,谢谢大家写了一个答案,你们帮助我走上正轨。 这个问题涉及到GoDaddy和Route53的重复input。

我结束了以下工作:

  • 在Godaddy的主屏幕上,您可以在“启动”域之前看到(“Launch”=最糟糕的名字,曾经打开设置,恕我直言)。 然后将NS服务器设置为Route53给我的NS服务器,它们是4,并在下一个图像中用黄色标记。 在这里输入图像说明

  • 我进入了这个logging,并把所有 GoDaddy的logging添加到Route53,你应该像这样结束:

在这里输入图像说明

  • 最后,在Godaddy上我删除了除CNAME条目以外的所有条目,我最初有A,TXT和NS条目。 这样现在只有Route53pipe理所有的条目。