我有一个 VPS,上面安装了 Apache Web 服务器。我想要做的是将我自己的网站域名转发到该服务器,并将这些网站的文件托管在我的 Apache Web 服务器中。据我所知,需要 DNS 服务器来管理哪个域名托管在哪里(IP 方面)。但我想要做的是将我的网站托管在同一个 IP 地址下,即我的 Web 服务器所拥有的 IP 地址下。我如何在 Web 服务器中分离这些网站的文件,这样我就不必使用http://host/foo
forwww.foo.com
和http://host/bar
for 了www.bar.com
?
答案1
您正在寻找的技术是基于名称的虚拟主机。通常,您需要配置 DNS 以将域指向服务器的 IP。然后 Apache 使用主持人:标头提供来自正确虚拟主机的信息。
Listen 80
NameVirtualHost *:80
<VirtualHost *:80>
ServerName foo.example.com
Serveralias www.foo.example.com
DocumentRoot /path/to/foo.example.com/root
.
.
.
</VirtualHost>
<VirtualHost *:80>
ServerName bar.example.com
Serveralias www.bar.example.com
DocumentRoot /path/to/bar.example.com/root
.
.
.
</VirtualHost>