Apache网站目录访问权限设置

1、目录访问权限

一个站点,就是一个“目录”,每个目录, 应该给其设定“访问权限”。

设置方法(apache2.2):


   
   
   
   
  1. "要设置权限的目录(站点)路径">
  2. # 设置当一个请求中没有给定请求的文件名有没有默认网页(首页)的时候显示文件列表
  3. Options Indexes
  4. # 开启分布式权限
  5. AllowOverride None
  6. # 设置权限控制的先后顺序,只有两种,要么先拒绝后运行,要不下先允许后拒绝
  7. Order Deny,Allow
  8. # Deny 用于设定要拒绝的来源地址或服务器名,几乎没有实际意义
  9. Deny from 拒绝名单,比如Deny from 192, 168.2 .3 www.abc.com
  10. Allow from 允许名单 比如:Allow from all
  11. # 设置该站点(文件夹)的“默认网页”(首页),可以设置多个,用于请求的时候没有带请求文件名默认访问的网页
  12. DirectoryIndex index.html index.php

设置方法(apache2.4):


   
   
   
   
  1. "要设置权限的目录(站点)路径">
  2. # 设置当一个请求中没有给定请求的文件名有没有默认网页(首页)的时候显示文件列表
  3. Options Indexes
  4. # 开启分布式权限
  5. AllowOverride None
  6. # 权限设置,要么拒绝所有,要么允许所有,要么允许指定的主机名或者ip地址
  7. # 拒绝所有的请求
  8. # Require all denied
  9. # 允许所有的请求
  10. Require all granted
  11. # 设置允许的主机域名,多个域名之间用空格隔开
  12. Require host xxx.com
  13. # 设置允许的ip,多个ip之间用空格隔开
  14. Require ip 192.168 .5 .6
  15. # 设置该站点(文件夹)的“默认网页”(首页),可以设置多个,用于请求的时候没有带请求文件名默认访问的网页
  16. DirectoryIndex index.html index.php

2、分布式权限

对于目录访问权限配置,它有两个局限:

apache配置文件修改(修改了权限),必须重启服务器
某个站点下面的“下级目录”不便单独进行设置
分布式权限:所谓分布式权限,指的就是对某个目录(站点)的子目录(子文件夹)进行单独的权限控制,并且修改权限后无需重启apache服务器。

设置方法:

1、 在要单独设置权限的子目录的上级站点目录权限中开启分布式权限,即在Directory节点中添加AllowOverride all,如图:

2、 在要设置权限的目录下面新建一个.htaccess文件,文件全名就是.htaccess,所以记事本无法完成该文件的创建,需要一款编辑器创建这种文件,如图:

创建该文件成功后,添加其内容和目录权限设置类似,比如添加如下代码:

保存,那么通过浏览器访问该站点,httpd-2.4.18-win64-VC11文件夹将不会显示在网页上,如图:

这是因为我当前的ip不在它允许的ip之中(拒绝所有)。这就达到了单独控制子目录访问权限,这就是分布式权限。

你可能感兴趣的:(Apache网站目录访问权限设置)