gpt4 book ai didi

.htaccess - 需要通过使用.htaccess提供禁止的错误403来阻止Google bot,Bing bot和具有空用户代理的客户端

转载 作者:行者123 更新时间:2023-12-02 02:44:38 25 4
gpt4 key购买 nike

需要使用禁止的错误阻止.htaccess文件中的用户代理。但是,这种效果只能与Google,Bing以及根本没有用户代理的地方一起使用。这不起作用:

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (Google|Bing||onlytogivespace) [NC]
RewriteRule (.*) - [F,L]

我写了这个,但是对于空用户代理它似乎不起作用。

需要帮助...

最佳答案

RewriteCond %{HTTP_USER_AGENT} (Google|Bing||onlytogivespace) [NC]  
RewriteRule (.*) - [F,L]

这将阻止每个用户代理。因为 RewriteCond指令中的正则表达式正在检查用户代理是否包含“”(不包含任何内容),因此不等于它等于空字符串。此正则表达式将成功匹配每个字符串/用户代理,因此将阻止所有内容。

要匹配一个空的用户代理,您需要将正则表达式更改为: (Google|Bing|^$|onlytogivespace)。注意 ^$匹配一个空字符串。

补充说明:
  • 您不需要NC指令上的RewriteCond标志。您知道Googlebot始终为Googlebot,而bingbot始终为bingbot
  • 使用L时,无需在RewriteRule指令上使用F标志。在此实例中隐含了L
  • 不需要
  • (.*),因为您不需要显式匹配URL路径,也不需要反向引用。
  • 不确定onlytogivespace的用途是什么?

  • 因此,可以将其重写:
    RewriteEngine On
    RewriteCond %{HTTP_USER_AGENT} (Googlebot|bingbot|^$)
    RewriteRule ^ - [F]

    关于.htaccess - 需要通过使用.htaccess提供禁止的错误403来阻止Google bot,Bing bot和具有空用户代理的客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56194283/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com