DotNetNuke robots.txt 没有受到 google 机器人的尊重

DotNetNuke robots.txt not being honored by google bots

我有一个多门户 dotnetnuke 安装:
domain1.com
domain2.com
domain3.com等

服务器为 32 GB,8 核。

我有一个 robots.txt 文件。当 google 开始抓取时,我看到 cpu 数小时内使用多个 google IP 地址达到 100%。根据 IIS,它试图抓取的 url 是 /lmm-product-service/elmah.axd/detail?id=af51e96f-d0cd-4598-90ad-ebe980947fa6,每次启动时都有一个新 ID。 url 对于 google bot 的所有当前实例都是相同的,但在再次开始抓取时会发生变化。

url 无效。当我尝试在浏览器中访问它时,出现 404 错误 -- 未找到。

我曾尝试在我的 robots.txt 中禁用 /lmm-product-service/ 但无济于事:

    User-agent: Googlebot
    Disallow: /*/ctl/       # Googlebot permits *
    Disallow: /admin/
    Disallow: /lmm-product-service/

其实不只是google在做这件事。它也是 ahrefs,但我已经在防火墙处阻止了它们。

有什么建议吗?

问题出在 ELMAH,一个外部 ASP.NET 记录器。如果 DNN 使用此记录器,则 DNN 软件中存在错误!升级 DNN !!... 错误:System.ComponentModel.Win32Exception 您确定 Google Bot 是真实的吗?有假货

好的。祈祷吧。我采取了不同的策略。我只是添加了一个 url 重写规则:

    <rule name="KillElmahRequests" enabled="true" stopProcessing="true">
        <match url=".*elmah.*" />
        <action type="AbortRequest" />
    </rule>

现在已经快 90 分钟了,没有任何问题。我仍然不知道为什么机器人试图抓取一个不存在的 url 以及为什么,因为它不存在,它正在吃掉 w3wp.exe 进程,但这似乎是正在工作。