我们正在做
Appliation["OnlineUsers"] += 1 in Session Start,
然而,每当谷歌机器人扫描我们的网站时,这个数字增长得非常快,我们希望避免这种情况。我们只想为真实用户增加这个数字。
让我们知道任何其他建议
答案 0 :(得分: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
同样适用于攻击企图。
答案 1 :(得分:1)
我建议在代码中检查用户代理,所有机器人都必须自己识别,这样你就可以进行检查了。
但是你必须以其他方式进行计数而不是检查Session start。