我有一个域名 example.com 和一个名为 web 的服务器。该网络服务器正在运行 Apache2。目前,该服务器响应以下请求:web.example.com。但是,我希望它能够响应请求示例.com。
为了使其正常工作,我将 ServerAlias 行添加到我的 apache 虚拟主机:
<VirtualHost *.80>
ServerName web.example.com
ServerAlias example.com
...
</VirtualHost>
另外,我还更新了我的 /etc/hosts 文件,如下所示:
127.0.0.1 localhost
<public_ip> web.example.com web example.com
最后我修改了我的 DNS 设置:
Name Type Value
@ A <public_ip>
web CNAME @
最令我困惑的是 /etc/hosts 文件。
我的问题:
对于运行 Apache 服务器的服务器,/etc/hosts 的作用是什么?当我请求 web.example.com 或 example.com 时会发生什么?
适合我的情况的正确设置是什么?
是否有任何书籍可以很好地解释与这些问题相关的概念?
非常感谢。