如何诊断 DNS 虚拟域 404

如何诊断 DNS 虚拟域 404

直到几天前,我还在服务器上托管一个域名。现在我通过 apache 虚拟主机添加了第二个域名。这两个域名都是基于名称的,并且托管在同一个 IP 上。

现在我的日志显示,新域应用程序调用了一些显然属于旧域的相对路径。看来所有这些调用都来自搜索引擎机器人,我仍然可以毫无问题地访问这两个页面。因此,对最终用户没有造成任何实际损害。

但我想诊断问题。我是一个相当优秀的程序员,但我对管理任务了解不多。因此,我想知道您建议采取哪些步骤来诊断问题并缩小范围?

系统:

  • 阿帕奇 2
  • Ubuntu 10.4 64 位
  • PushionPassenger 带 2 个 Rails 应用程序
  • DNS 基于主机

我想提供域名,但我不确定这是否可以。

更新提供更具体的信息:

这两个域是:wintersolutions.de(“旧”)和pollat​​or.com(“新”)。根据我的日志文件,当访问例如 /de/knowhow 时,google-bot 在 pollat​​or-application 上达到 500 次,这是wintersolutions.de域。我刚刚发现的另一个奇怪的现象是,如果我通过谷歌访问 wintersolutions 域缓存我得到了另一个域名fitzzle.com这是我的另一个域名。此域名的 DNS 也指向我的服务器,但其背后尚无任何应用程序。

到目前为止我唯一的观察是,谷歌似乎青睐字母表前面的域名。

除域名外,两个 vhost 文件看起来相同:

<VirtualHost *:80>
    ServerName wintersolutions.de
    ServerAlias www.wintersolutions.de
    DocumentRoot "/var/www/sites/wintersolutions.de/current/public"
    ErrorLog "/var/log/apache2/wintersolutions.de-error_log"
    CustomLog "/var/log/apache2/wintersolutions.de-access_log" common
    <Directory "/var/www/sites/wintersolutions.de/current/public">
        Options All
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    <Directory "/var/www/sites/wintersolutions.de/current/public/assets">
    AllowOverride All
    </Directory>
    <LocationMatch "^/assets/.*$">
        Header unset Last-Modified
    Header unset ETag
    FileETag none
    ExpiresActive On
    ExpiresDefault "access plus 1 year"
    </LocationMatch>
    RewriteEngine On
    # Remove the www
    RewriteCond %{HTTP_HOST} ^www.wintersolutions.de$ [NC]
    RewriteRule ^/(.*)$ http://wintersolutions.de/$1 [R=301,L]
</VirtualHost>

答案1

由于没有看到更多您的配置,我只能进行猜测。

我的第一个猜测是搜索引擎/机器人在请求页面时使用的是 IP 地址而不是主机名。这意味着列表中的第一个 VirtualHost 将由 Apache 使用。如果您将新域名作为列表中的第一个域名,这将产生您看到的效果。

我的第二个猜测是,这些都是滥用/破解你系统的 php 安装的尝试,并且你原来的网站确实有一些 php,但第二个网站没有。

相关内容