如何更改Linode IP来打开不同的网站?

如何更改Linode IP来打开不同的网站?

我有一个 LINODE 512 帐户(Ubuntu 10.04 LTS),其中有 1 个 IP。使用 /etc/apache2/sites-available(已启用),我托管了 4 个网站,运行良好。

但我获得的 IP 地址与我使用 DNS 管理器在帐户中创建的最新网站相关联。这意味着当我在浏览器中输入 IP 地址时,它只会打开最新添加的网站。

现在如何改变该关联以便它可以从我的帐户打开我想要的任何网站?

答案1

这根本就是不可能的。这与 DNS 无关,而是与 Apache 有关虚拟主机以及“Host”HTTP 标头。

Apache 通过 HTTP 中发送的“Host”标头来区分您尝试访问的 VirtualHost。请参阅本网站举个例子。

当你通过 IP 地址访问 Web 服务器时,“Host”标头仅包含 IP 地址 — 即不是您托管域的 DNS 名称。这意味着 Apache 无法分辨您想要哪个站点,并且会为其所知道的第一个站点提供服务。(您很可能会发现它是按字母顺序在您的配置中第一个出现的站点。)

想一想。如果您浏览到 Linode 的 IP(不使用 DNS 名称),当您实际上没有告诉它时,Apache 如何知道您要浏览哪个 VirtualHost?

您可以通过在 VirtualHost 配置中放置“ServerAlias my_linode_ip”节来解决此问题,但这每次只能对一个站点起作用。(即,您需要更改配置以更改直接 IP 指向的位置。)

相关内容