没有www的DNS无效

时间:2018-01-31 21:47:13

标签: dns

我有一个使用http://www.example.com

完全可以访问的域名

我希望使用http://example.com

可以访问此相同的域名

不幸的是,使用我的实际DNS配置,它不起作用。 这就是我在DNS配置中所拥有的:

*   CNAME   www
www CNAME   address_my_domain.

我在想通配符会重定向到www,但似乎我错了......我可以在DNS中定义什么才能在没有www的情况下访问该网站? 谢谢你的帮助

2 个答案:

答案 0 :(得分:1)

所以你实际上并不需要这些记录,https://和www。不相关,您可以通过A记录让您的区域的根目录指向您网站的IP:

@ IN A ip-address

代替@的地方,您可以填写您所在地区的完整地址,例如example.com.,但通常@符号被识别为区域根。如果您的网站实际上是使用其他域托管的,那么这很棘手,因为您的区域根目录不能是CNAME的名称,例如你不能

@ IN CNAME site.address

您必须拥有类似

的内容
portal.example.com IN CNAME site.address

添加更多细节:

您的网站在www.example.com上解析的原因是您在区域www上添加了名为example.com的记录,而www.example.com是包含CNAME的记录您的网站,但是example.com是您所在区域的根,并且本身就是一条记录,它没有您网站的CNAME,这就是为什么它不会去那里,http://与DNS记录无关,您的区域顶点记录@example.com本身不能是CNAME,因此您可能的解决方案是将记录指定为网站的CNAME,例如portal IN CNAME site.address,人们会使用portal.example.com访问您的网站,或者根据您使用的DNS软件,您可以创建一个别名记录,允许顶点记录为CNAME但通过其他奇特的方式,亚马逊的Route 53允许这个

答案 1 :(得分:0)

您可以使用通配符添加子域,但不能减去它们 - 例如:

var charts = {};
function createChart(category, name) {
    if (!charts[category]) charts[category] = {};
    charts[category][name] = new Chart();
}

您需要A记录指向“基本”域的正确IP地址:

*.example.com.   IN CNAME example.com.