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

简介:

禁止指定user_agent

本节介绍如何通过rewrite实现限制指定 user_agent 的请求:

即禁掉不想让那些引擎访问的请求

编辑虚拟主机配置文件

[root@LAMPLINUX ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

(找到“域名301跳转的配置”即“rewrite的mod配置”内写入)

  

   RewriteCond %{HTTP_USER_AGENT} ^.*curl.* [NC,OR]      # [NC]表示不区分大小写

   RewriteCond %{HTTP_USER_AGENT} ^.*chrome* [NC]

   RewriteRule .* - [F]                                                           # 把 curl 和 chrome 访问禁掉

   [root@LAMPLINUX ~]# apachectl -t

   Syntax OK

   [root@LAMPLINUX ~]# apachectl restart

这样就禁止并限定制定浏览器的访问请求,我们通过rewrite实现。


禁止用户通过浏览器访问某个目录

接着上一节,继续编辑虚拟主机配置文件

[root@LAMPLINUX ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

通过rewrite限制访问某个目录,即让目录下的文件不能被用户通过浏览器访问。

(还是在rewrite的mod里,添加之前要把上一节的条件注释掉 “#”,便于测试是否执行成功

RewriteCond %{REQUEST_URI} ^.*/tmp/.* [NC]

RewriteRule .* - [F]

[root@LAMPLINUX ~]# apachectl -t

Syntax OK

[root@LAMPLINUX ~]# apachectl restart

经测试,执行成功,网址方法访问/tmp/目录以及目录下的文件


这一节的两个配置可以总况可以写成以下形式:

<IfModule mod_rewrite.c>

    RewriteEngine on

    RewriteCond %{HTTP_HOST} ^www.lam2.com$

    RewriteRule ^/(.*)$ http://www.lam.com/$1 [R=301,L]


    RewriteCond %{HTTP_USER_AGENT} ^.*curl.* [NC,OR]       # [NC]表示不区分大小写

    RewriteCond %{HTTP_USER_AGENT} ^.*chrome* [NC]

    RewriteRule .* - [F]                                                            # 把 curl 和 chrome 访问禁掉


    RewriteCond %{REQUEST_URI} ^.*/tmp/.* [NC]

    RewriteRule .* - [F]

</IfModule>

蓝色部分是域名301跳转

红色部分是禁止指定user_agent

绿色部分是禁止用户通过浏览器访问某个目录


本文转自 听丶飞鸟说 51CTO博客,原文链接:http://blog.51cto.com/286577399/1673210

相关文章
|
人工智能 自然语言处理 JavaScript
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
Agent-E 是一个基于 AutoGen 代理框架构建的智能自动化系统,专注于浏览器内的自动化操作。它能够执行多种复杂任务,如填写表单、搜索和排序电商产品、定位网页内容等,从而提高在线效率,减少重复劳动。本文将详细介绍 Agent-E 的功能、技术原理以及如何运行该系统。
1545 5
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
|
Ubuntu Linux 测试技术
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
在Linux中,已知 apache 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?
Request请求转发和重定向的资源路径问题,目录到底加不加,取决于浏览器用,还是服务器用,规避项目目录发生修改,导致重定向失败
Request请求转发和重定向的资源路径问题,目录到底加不加,取决于浏览器用,还是服务器用,规避项目目录发生修改,导致重定向失败
|
Apache
apache指定ip可访问,并输出指定错误
apache指定ip可访问,并输出指定错误
171 1
|
存储 Ubuntu Linux
如何在 Ubuntu 12.04 上使用 Apache 配置 WebDAV 访问
如何在 Ubuntu 12.04 上使用 Apache 配置 WebDAV 访问
632 0
|
网络安全 API Apache
如何在win系统部署Apache服务并实现无公网ip远程访问
如何在win系统部署Apache服务并实现无公网ip远程访问
|
安全 Linux 网络安全
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
730 1
|
网络安全 API Apache
本地快速部署Apache服务器并使用内网穿透实现远程访问
本地快速部署Apache服务器并使用内网穿透实现远程访问
616 2
|
10月前
|
人工智能 数据处理 API
阿里云、Ververica、Confluent 与 LinkedIn 携手推进流式创新,共筑基于 Apache Flink Agents 的智能体 AI 未来
Apache Flink Agents 是由阿里云、Ververica、Confluent 与 LinkedIn 联合推出的开源子项目,旨在基于 Flink 构建可扩展、事件驱动的生产级 AI 智能体框架,实现数据与智能的实时融合。
1521 6
阿里云、Ververica、Confluent 与 LinkedIn 携手推进流式创新,共筑基于 Apache Flink Agents 的智能体 AI 未来
|
存储 Cloud Native 数据处理
从嵌入式状态管理到云原生架构:Apache Flink 的演进与下一代增量计算范式
本文整理自阿里云资深技术专家、Apache Flink PMC 成员梅源在 Flink Forward Asia 新加坡 2025上的分享,深入解析 Flink 状态管理系统的发展历程,从核心设计到 Flink 2.0 存算分离架构,并展望未来基于流批一体的通用增量计算方向。
701 0
从嵌入式状态管理到云原生架构:Apache Flink 的演进与下一代增量计算范式

推荐镜像

更多