2

我们正在做

    Appliation["OnlineUsers"] += 1 in Session Start, 

但是,每当 google bot 扫描我们的网站时,这个数字就会快速增加,我们通常希望避免这种情况。我们只想为真实用户增加这个数字。

让我们知道任何其他建议

4

2 回答 2

2

如果您想要一个正则表达式,您可以使用它来匹配许多蜘蛛,并且匹配(我发现是)常见的攻击尝试:

    '' portions of the browser string which indicate a spider
    Dim re As New Regex("bot|spider|slurp|crawler|teoma|DMOZ|;1813|findlinks|tellbaby|ia_archiver|nutch|voyager|wwwster|3dir|scooter|appie|exactseek|feedfetcher|freedir|holmes|panscient|yandex|alef|cfnetwork|kalooga|Charlotte|isara|butterfly|kilomonkey|larbin|postrank|webcollage|netcraft|Netintelligence|baypup|dragonfly|EmailSiphon|ExactSearch|LucidMedia|Mail\.Ru|MSIndianWebcrawl|PycURL|Python-urllib|Qryos|Robozilla|SBIder|StackRambler|BoardReader|scoutjet|allrati|192\.comAgent|cizilla|dnsdigger|qwant", RegexOptions.Compiled Or RegexOptions.IgnoreCase)

    '' attacks
    Dim badRe As New Regex("morfeus|nv32ts|dragostea|zmeu|DataCha0s|GT::WWW|CZ32ts", RegexOptions.IgnoreCase Or RegexOptions.Compiled)

然后

If re.IsMatch(userAgentString) Then ' it's a spider

对于攻击尝试也是如此。

于 2012-08-15T16:11:59.593 回答
1

我建议在您的代码中检查 USER AGENT,所有机器人都必须如此标识自己,以便您可以在这个意义上进行检查。

但是,您必须以其他方式进行计数,而不是检查会话开始。

于 2012-08-15T15:56:29.680 回答