帮助 - apache 可以从(几乎)任何 URL 访问我的网站!

帮助 - apache 可以从(几乎)任何 URL 访问我的网站!

我正在运行 Ubuntu 10.04,其中有 apache、rails、mysql 等。

我的 rails 网站在 www.example.com 上运行。我打算使用基于命名的虚拟主机,并且我为 www.example.com 配置/启用了一个虚拟主机文件。我的网站托管在 Amazon EC2 上。

问题是,如果我设置了一个新的 DNS 记录(例如 test.example.com)并浏览到该记录,我的网站 www.example.com 就会显示出来!这无需配置任何新的虚拟主机。

如果我转到我的 DNS 记录并定义 test2.example.com 等,情况也是如此。无需触碰我的服务器,这些新的 URL 就可以为我的网站提供服务。

这不是我想要的!我想使用基于名称的虚拟主机,并为每个子域托管不同的网站。

我的问题可能出在哪里?

这是我的虚拟主机文件:

ServerSignature Off
ServerTokens Prod
#NameVirtualHost *:80 - this is defined in a default config file already.

<VirtualHost *:80>
    ServerAdmin [email protected]
    UseCanonicalName On

    ServerName www.example.com
    DocumentRoot /home/ubuntu/example/public
    ErrorLog /home/ubuntu/example/log/error.log

    <Directory /home/ubuntu/example/public/>
           AllowOverride all
           Options -MultiViews 
    </Directory>

</VirtualHost>

答案1

如果没有任何匹配的虚拟主机可用,apache 将使用它认为的默认虚拟主机。如果您希望显示空白页,请将其设置为第一个虚拟主机,然后定义您的 www.example.com 条目。

相关内容