Nginx配置——禁止指定user_agent

用途

你的网站访问量很大,而且服务器资源比较紧缺,因为我们的成本要稍微控制地严谨一点,所以呢,服务器稍微有点吃力,那么,网站呢它都会被搜索引擎的蜘蛛去爬取,它们去爬取的时候呢,跟咱们真人访问的行为是一样的,同样也会访问我们的数据库,同样也会耗费php资源,所以这个时候,有必须把一些不太重要的搜索引擎、蜘蛛爬虫给它禁掉。

## 编辑配置文件

[[email protected] ~]# vim /usr/local/nginx/conf/vhosts/test.conf

if ($http_user_agent ~* ‘curl|baidu|111111‘) {

return 403;

}

解释说明:

http_user_agent 浏览器标识;

~* 忽略大小写匹配

~ 区分大小写匹配

## 检查并重新加载

[[email protected] ~]# /usr/local/nginx/sbin/nginx -t

[[email protected] ~]# /usr/local/nginx/sbin/nginx -s reload

## 测试

[[email protected] ~]# curl -x127.0.0.1:80 www.test.com/forum.php -I

HTTP/1.1 403 Forbidden

解释说明:

curl这个标识是被拒绝的

## curl -A 模拟浏览器标识进行测试

[[email protected] ~]# curl -A "slfjsf" -x127.0.0.1:80 www.test.com/forum.php -I

HTTP/1.1 200 OK

解释说明:

模拟这个并没有放入被拒绝里

[[email protected] ~]# curl -A "sl111111fjsf" -x127.0.0.1:80 www.test.com/forum.php -I

HTTP/1.1 403 Forbidden

解释说明:

含有了111111,这个是放了被拒绝里

[[email protected] ~]# curl -A "sBAIDUfjsf" -x127.0.0.1:80 www.test.com/forum.php -I

HTTP/1.1 403 Forbidden

解释说明:

上面设置了不区分大小写

时间: 2024-10-11 23:29:37

Nginx配置——禁止指定user_agent的相关文章

apache限制某个目录禁止解析php、apache禁止指定user_agent、php相关配置

一:apache限制某个目录禁止解析php 某个目录下禁止解析 php,这个很有用,我们做网站安全的时候,这个用的很多,比如某些目录可以上传文件,为了避免上传的文件有×××,所以我们禁止这个目录下面的访问解析php. <Directory /data/www/data> php_admin_flag engine off <filesmatch "(.*)php"> Order deny,allow Deny from all </filesmatch&g

Nginx 访问控制&屏蔽指定 user_agent

禁止非法恶意访问的IP [[email protected] ~]# vim /usr/local/nginx/conf/vhosts/linux.conf location ~ .*admin\.php$ { allow 127.0.0.1; deny all; #auth_basic "auth"; #auth_basic_user_file /usr/local/nginx/conf/.htpasswd; include fastcgi_params; fastcgi_pass

apache‘禁止指定user_agent’ 和 ‘禁止用户通过浏览器访问某个目录’

禁止指定user_agent 本节介绍如何通过rewrite实现限制指定 user_agent 的请求: 即禁掉不想让那些引擎访问的请求 编辑虚拟主机配置文件 [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf (找到"域名301跳转的配置"即"rewrite的mod配置"内写入) RewriteCond %{HTTP_USER_AGENT} ^.*curl.* [NC

Apache禁止解析php 禁止指定user_agent Apache通过rewrite限制某个目录

<Directory /data/www/data> php_admin_flag engine off <filesmatch "(.*)php"> Order deny,allow Deny from all </filesmatch> </Directory> 禁止指定user_agent <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_USER_

Apache禁止指定user_agent

user_agent我们把它叫做浏览器标识,目前主流的浏览器有IE.chrome.Firefox.360.iphone上的Safari.Android手机上的.百度搜索引擎.Google搜索引擎等很多,每一种浏览器都有对应的user_agent. 配置如下: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_USER_AGENT} ^.*Firefox/4.0.* [NC,OR] RewriteCond %{HTTP_US

LAMP--Apache 禁止指定 user_agent

user_agent 可以当作浏览器标识,目前主流的浏览器有 IE.chrome.Firefox.360.iPhone上的 Safari.Android 手机上的百度搜索引擎.google搜索引擎等很多,每一种浏览器都有对应的 user_agent,下面列出几个常见的 user_agent. Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET4.0E; SE 2.x) Mozilla/5.0(

LNMP - nginx禁止指定user_agent

user_agent用来识别访问者的操作系统(包括版本号)浏览器(包括版本号)和用户个人偏好的代码比如我们的服务器网站,会被一些搜索引擎的爬虫程序访问,这对服务器压力造成了一定的影响.我们就可以根据爬虫的user_agent标示,来禁止掉它访问网站. 1.修改配置文件 [[email protected] ~]# vim /usr/local/nginx/conf/vhosts/test.conf server{    listen 80;    server_name www.test.com

Apache 配置禁止指定的 user_agent

User-Agent(浏览器类型),即不让哪些浏览器来访问我们的网站 [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf <VirtualHost *:80> DocumentRoot "/data/www" ServerName www.test.com ErrorLog "logs/test.com_error_log" CustomLog "

nginx禁止指定user_agent

匹配curl,baidu,111111的,全部拒绝!   ~*  ---不匹配大小写