Windows Server上的Apache 2.2多个站点一个IP

Windows Server上的Apache 2.2多个站点一个IP

我非常熟悉 Linux 上 apache 的运作。

环境:托管 VPS(完全访问)

Windows Server 2003 数据中心 x64 版本,Apache 2.2

我有 2 个想要托管的简单网站。

example1.com 和 example2.org

该服务器最初由其他人设置,并且 example1.com 运行正常。

所以我的任务是将 example2.org 添加到服务器。

我在 C:\www\example2 中创建了一个基本的 index.html 测试页面

在 httpd-vhosts.conf 中添加虚拟主机记录

为了测试目的,将 127.0.0.1 example2.org 添加到我的主机文件中,以便我可以进行本地测试。

这一切都按预期进行,我可以查看显示我的测试 html 文件的 example2.org。

问题是...当 DNS 传播时,当我从本地 Windows 服务器以外的任何地方访问 example2.org 时,它会显示 example1.com 站点。

我完全搞不懂为什么会发生这种情况?有什么想法吗?

什么时候 Apache 读取外部连接与读取本地连接的方式不同?

NameVirtualHost *:80

<VirtualHost *:80>
ServerName www.example2.org
ServerAlias example2.org
ServerAdmin [email protected]    
DocumentRoot "C:/www/example2"

<Directory "C:/www/example2">
    Order Deny,Allow
    Allow from all
</Directory>

ErrorLog "logs/example2-error.log"
CustomLog "logs/example2-access.log" common
</VirtualHost>

<VirtualHost *:80>

ServerName www.example1.com
ServerAlias www.example1.com
ServerAdmin [email protected]
DocumentRoot "C:/www/example1"

<Directory "C:/www/example1">
    Order Deny,Allow
    Allow from all
</Directory>

ErrorLog "logs/example1-error.log"
CustomLog "logs/example1-access.log" common
</VirtualHost>

以上就是我的 httpd-vhosts.conf 文件中的内容。请记住,example1.com 运行良好。

答案1

您需要为此站点创建两个不同的虚拟主机,并使用不同的“ServerName xxxxx”选项

相关内容