.htaccess探秘(一)访问控制(Allow/Deny)
- 4230
- Linux
- 3
- super_dodo
- 2015/11/06
访问控制(Allow/Deny)
1. 验证是否支持.htaccess
在目录下新建一个.htaccess 文件,随笔输入一串字符(毫无意义),看看什么反应,如果是500错误,说明目前环境是支持 .htaccess的
adsadsadasdsad
2. deny from all
# no one gets in here! deny from all
3. Order命令
Order命令是一个难点,也是配置apache的基础,它决定了Apache处理访问规则的顺序。
通过Allow,Deny参数,Apache首先找到并应用Allow命令,然后应用Deny命令,以阻止所有访问。
通过Deny,Allow参数,Apache首先找到并应用Deny命令,然后应用Allow命令,以允许所有访问。
//假设本地的IP为 192.168.4.126 Order Deny,Allow Deny from All Allow from 192.168.4.126 //结果:本地访问成功,非本地IP访问 403 Forbidden
4. 利用.htaccess过滤域名或网络主机(Allow/Deny)
下例可以限制所有含有"domain.com”的网络主机访问网站:
Order Allow,Deny Allow from all Deny from .*domain\.com.*
5. 禁止访问指定文件
Order Deny,Allow Deny from All Allow from 192.168.4.126 <Files favicon.ico> order allow,deny deny from all </Files>
6. 禁止访问指定类型的文件
Order Deny,Allow Deny from All Allow from 192.168.4.126 <FilesMatch ".(txt|ico)$"> order allow,deny deny from all </FilesMatch>
Files之后的波浪线用于开启“正则表达式”分析。请注意,这是个过时的用法,Apache更推荐使用指令[3]正则表达式必须在双引号之间,有关htaccess的正则表达式用法,请查阅本站《.htaccess正则表达式》一文。
双引号中的“管道符”(|)用于将两种文件类型(.log和.exe)分开,相当于逻辑“或”Order命令必须嵌在Files节(Section)中,否则将会应用到所有文件Satisfy All表示必须同时满足主机级别(Allow/Denay)和用户级别(Require)的限制,All是默认值,该行可以省略。
利用.htaccess进行密码保护与验证有待研究
htaccess探秘系列相关延伸阅读
.htaccess探秘(一)访问控制(Allow/Deny)
.htaccess探秘(二)目录浏览与主页
.htaccess探秘(三)URL重写与URL重定向
.htaccess探秘(四)htaccess正则表达式
只要热情犹在,哪怕青春消逝。一个人能力当中所蕴藏的潜能,远超过自己想像以外。
转载原文地址: http://www.cnblogs.com/ganiks/
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例