本文共 821 字,大约阅读时间需要 2 分钟。
user_agent可以理解为浏览器标识
user_agent为什么可以做访问控制呢? 背景:比如网站受到cc攻击。攻击的人通过软件或者肉机,想攻击某个网站的时候,把所有的肉机发动起来,让它们同时访问一个站点。但是cc攻击往往有一个特征,就是user_agent一致的,访问地址一致。访问速度快,每秒N次核心配置文件内容
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_USER_AGENT} .curl. [NC,OR] RewriteCond %{HTTP_USER_AGENT} .baidu.com. [NC] RewriteRule .* - [F] </IfModule> OR:匹配的意思。user_agent匹配当前行或者下面一行。如果不加OR就是并且 NC:表示忽略大小写。因为有些浏览器首字符会大写。 F:就是直接Forbidden 因为curl是没有user_agent(上一次访问的地址) curl -A "123123" 指定user_agent //自定义user_agent curl -A "lsx lsx" -x192.168.211.150:80 discuz2.com/lsx/1.php -I //user_agent生效 cat /usr/local/apache2.4/logs/discuz2.com-access_log 192.168.211.150 - - [ +0800] "HEAD HTTP/1.1" 200 - "-" "lsx lsx"关于curl:
-A :指定user_agent -e:指定Referer -x:相当于省略hosts -I:查看状态码本文转自 虾米的春天 51CTO博客,原文链接:http://blog.51cto.com/lsxme/2054742,如需转载请自行联系原作者