我刚刚购买了Linode VPS 托管计划,并按照本指南进行设置。在“设置主机名”部分和“更新/etc/hosts”部分,它说这里设置的FQDN/主机名不需要与我即将托管的网站相关,这让我感到困惑。
我通过阅读大量文章进行了自己的研究,但仍然不太确定主机名/FQDN 在我的网络托管业务中扮演什么角色。以下是我设法找出的一些基本事实,如果有任何错误,请随时纠正我:
xxx
,我认为可以宽松地称为子域,也可以根据被称为“主机名”,https://kb.iu.edu/d/aiuv。在我的本地机器上,通过将以下行添加到hosts
文件中
63.117.14.58 www.yahoo.com 随便
每个对“www.yahoo.com”或“whatever”的网络请求都将被重定向到 IP 地址 63.117.14.58(这是 google.com 的 IP)。这是一种阻止本地计算机中不需要的站点的方法。
现在教程建议将此行添加到我服务器中的“hosts”文件中
12.34.56.78(//my server's IP) myhostname.anything.com myhostname
Run Code Online (Sandbox Code Playgroud)
它提到在上面的行中,域名可能是也可能不是我将要托管的域,但主机名应该是我在前面的步骤中已经设置的。我的问题是:
1)基于事实#3,我觉得这条线重定向服务器上的任何请求myhostname.anything.com
或myhostname
到我的IP地址,但是这是什么意思?myhostname.anything.com
来自用户计算机的任何请求不应该已经转换为某个 IP 地址(无论是不是我的 IP 地址)?为什么我必须在我的服务器上重定向它?我对HTTP请求工作原理的理解是,当用户在浏览器中输入域名时,浏览器会联系域服务器,域服务器会根据域的DNS记录将其定向到DNS服务器,然后DNS服务器将解析 IP 地址,然后浏览器从该 IP 地址获取数据。我理解的这个过程似乎与我服务器上的“hosts”文件无关。
2) A.关于FQDN,为什么主机名必须与我在服务器上设置的主机名相同而域名却不是?
B.如果我在这里设置了不同的主机名会怎样?
C.这里设置或不设置我的域名作为FQDN的目的是什么?
D.如果我只设置 FQDN 而不是主机名会发生什么?像这样
12.34.56.78(//my server's IP) myhostname.anything.com
Run Code Online (Sandbox Code Playgroud)
很多问题,但我相信其中一些问题的答案是重叠的,总的来说,我认为最大的问题是“设置主机名/编辑主机文件在我的网络托管业务中扮演什么角色?”
提前感谢您的时间。