由于对我的网站进行了一些业余制造的 DDOS 攻击,我不得不使用 .htaccess 拒绝一些流量,这很好。
不幸的是,它也阻止了 googlebot/bingbot:
order allow, deny
deny from 54.
SetEnvIfNoCase Referer "^$" bad_user
SetEnvIfNoCase User-Agent "^Wget" bad_user
Deny from env=bad_user
它只是阻止了整个流量54.x.x.x
(我从中获得的唯一流量来自受感染的亚马逊云 - 我知道我可以排除亚马逊云的 30 个 IP 范围,而不是全部54.x.x.x
,但我需要快速解决方案)。
其余的机器人(大部分来自中国大陆、台湾等地)不使用引荐来源网址,所以:
SetEnvIfNoCase Referer "^$" bad_user
阻止他们。
但它也有副作用:
- 当有人从书签访问我的页面或当他直接在浏览器中键入它时(例如,他在名片上有红色的),他将看不到我的网站。
- Googlebot、bingbot(以及其他不太重要的机器人)通常也不使用引荐来源网址。
#1
很不方便,但这#2
是一个我必须迅速解决的真正问题。
我发现对我很重要的机器人使用这些标签:
66.249.64.119 - - [...] "GET /robots.txt HTTP/1.1" 403 534 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.119 - - [...] "GET /programowanie/ HTTP/1.1" 403 537 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.115 - - [...] "GET /3d-graphic/ HTTP/1.1" 403 535 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
207.46.13.4 - - [...] "GET /robots.txt HTTP/1.1" 403 534 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
207.46.13.4 - - [...] "GET / HTTP/1.1" 403 524 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
是否有可能.htaccess
以某种方式将我的规则与“但如果标签包含“Googlebot”或“bingbot”,让他走”作为最重要的规则(即使他们不使用推荐人)?
如果没有,也许我可以添加一些内容来robots.txt
通知 Google/Bing 他们应该在标签中添加推荐人(我怀疑他们会考虑到这一点)?