博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
限制user_agent
阅读量:6082 次
发布时间:2019-06-20

本文共 793 字,大约阅读时间需要 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:查看状态码

转载于:https://blog.51cto.com/lsxme/2054742

你可能感兴趣的文章
php ssh2
查看>>
状态码
查看>>
Git合并多个 Commit
查看>>
结合Spring和Groovy解决脚本热加载
查看>>
【实战Java高并发程序设计 3】带有时间戳的对象引用:AtomicStampedReference
查看>>
SpringMVC内部跳转与重定向
查看>>
oracle 创建,删除存储过程,参数传递,创建,删除存储函数,存储过程和函数的查看,包,系统包...
查看>>
基础代码随笔
查看>>
如何实现SVN导出某段时间修改过的文件;自动将class文件部署到服务器中;重启服务器...
查看>>
PropertyUtils、BeanUtils的copyProperties()和set、get性能比较
查看>>
2014-11-10 关于C# 如何获取本地电脑的UTC时区
查看>>
Ceph的基本情况进行概要介绍
查看>>
MySQL数据库优化思路之配置文件优化
查看>>
分享纯 nginx 防御代码 nginx safe.conf
查看>>
Python-求素数程序
查看>>
如何去掉ECSHOP meta标签中的版本号
查看>>
【重构与模式】6.3 用Factory封装类
查看>>
Go语言interface详解
查看>>
ASP实现自动解析网页中的图片地址
查看>>
一个基于CSS3的网站
查看>>