Dan*_*rec 4 domain-name-system virtualhost
运行 Ubuntu 10.04
我的服务器使用 Apache2 中的命名虚拟主机为 3 个不同的域提供服务。我目前使用不同的命名虚拟服务器将 www 重定向到非 www 等效项的 301。它正在工作,但我不明白我的 /etc/hosts 文件的正确条目,我认为这对我尝试设置 Varnish 造成了问题。
我知道我需要 localhost 行
127.0.0.1 localhost localhost.localdomain
Run Code Online (Sandbox Code Playgroud)
我还应该在这里列出每个域吗?如
127.0.0.1 localhost localhost.localdomain example1.com example2.com example3.com
Run Code Online (Sandbox Code Playgroud)
服务器IP的条目呢?我需要以下行吗?
< IP.Of.Server > example1.com example2.com example3.com
Run Code Online (Sandbox Code Playgroud)
另外,我是否应该在每一行上列出 www.example.com 和 example.com,以便它们进入 Apache 并且它可以处理 301 redir?
我假设这是用于测试,否则您将设置正确的 DNS 记录,而不是您的hosts文件。
你想要的是你想要调用你的 web 服务器的每个名字,解析到你的服务器的 IP 地址。
如果您从服务器本身进行测试,那么您可以将所有内容都指向 127.0.0.1,当然也可以将其指向服务器的实际 IP 地址。
如果您正在另一台机器上进行测试,那么您当然希望每个名称都解析为服务器的真实 IP 地址。
语法是紧张的:
IP.of.server www.domain.name domain.name
IP.of.server www.otherdomain.name otherdomain.name
IP.of.server www.anotherdomain.name anotherdomain.name
IP.of.server www.yetanotherdomain.name yetanotherdomain.name
Run Code Online (Sandbox Code Playgroud)
...等等。
当然,ErikA 说的完全正确。修改hosts的文件没有必要让服务器工作; 仅当/当您需要在没有适当的 DNS 记录的情况下对其进行测试时,或者如果您想覆盖它们以将 fe 连接到测试服务器而不是生产服务器时,它才有用。