【问题标题】:Default page returns 404 only when using search bot user agent仅当使用搜索机器人用户代理时,默认页面才返回 404
【发布时间】:2016-06-21 22:17:56
【问题描述】:

我使用 ASP.NET 网页(不是 MVC,不是 Web 表单)创建了一个网站。

如果我在浏览器中通过 mydomain.com 访问默认页面,它会显示默认页面 (index.cshtml) 正常。但是,搜索引擎会看到 404 页面,如果我将用户代理更改为 Googlebot 或 Bingbot,我也会收到 404 错误。

这只会影响默认页面 - 如果我使用 mydomain.com/index.cshtml,我不会得到 404 页面。

我的代码中没有用户代理检测。

我查看了标头,没有重定向,只有在使用机器人用户代理时才会立即响应 404。

是否有一些内置的用户代理检测会影响 ASP.NET 网页中的默认页面?或者我的托管公司可以做些什么(Arvixe)?

如果有帮助,我可以添加代码(但不确定我会添加什么代码),或者链接到网站。

【问题讨论】:

  • 您的网络服务器似乎阻止了访问
  • 它只发生在默认页面 (/) - 所有其他页面 (/xyz, /abc.cshtml) 都可以正常工作。

标签: asp.net asp.net-webpages


【解决方案1】:

我找到了问题的原因。

显然 Arvixe 网站已被黑客入侵。黑客在 web.config 中插入了一些代码,这些代码显示了一个不同的 URL 来代替机器人的主页......

<rewrite>
  <rules>
    <rule name="1" patternSyntax="ECMAScript" stopProcessing="true">
      <match url="^$" ignoreCase="true" negate="false" />
      <conditions logicalGrouping="MatchAny" trackAllCaptures="false">
        <add input="{HTTP_USER_AGENT}" pattern="Googlebot|Yahoo|MSNBot|bingbot" />
      </conditions>
      <action type="Rewrite" url="bot.asp" />
    </rule>
  </rules>
</rewrite> 

我确实在 Bing 搜索我的网站时看到了运动衫的标题/描述,这就是我调查此问题的原因。

从搜索结果来看,这似乎影响了许多 Arvixe 客户,大多数人可能永远不会知道,因为他们不太可能通过搜索机器人用户代理看到他们的网站。

Arvixe 似乎已经意识到了黑客攻击,并且已经通过删除垃圾邮件文件(bot.asp 或 bot.php)来阻止这种情况,但他们尚未修复 web.config。如果您与 Arvixe 共享主机,您应该立即检查。

您还应该检查您的 Google 搜索控制台/分析帐户是否有添加的所有者/用户,因为有些人也报告了这一点,尽管您会收到一封电子邮件警告。

我更改了我所有的 Arvixe 密码,但我怀疑他们获得了个人帐户密码,他们可能在服务器级别被黑客入侵。

【讨论】:

    猜你喜欢
    • 2013-08-28
    • 2016-06-19
    • 2023-03-21
    • 1970-01-01
    • 2011-11-23
    • 1970-01-01
    • 1970-01-01
    • 2020-10-28
    • 2012-08-08
    相关资源
    最近更新 更多