apache配置访问限制

1.禁止访问某些文件/目录

增加Files选项来控制,比如要不允许访问 .txt扩展名的文件,保护php类库:

<Files ~ ".txt$">
  Order allow,deny
  Deny from all
</Files>

2.禁止访问某些指定的目录:(可以用 <DirectoryMatch> 来进行正则匹配)

<Directory ~"^/var/www/(.+/)*[0-9]{3}">
  Order allo,deny
  Deny from all
</Directory>
<Directory "C:/websoft9/wampstack7.0.70/apache2/htdocs/myself/img/" >
  Options FollowSymLinks
  AllowOverride all
  Order allow,deny
  Allow from all
</Directory>

3.通过文件匹配来进行禁止,比如禁止所有针对图片的访问(慎用):

<FilesMatch .(?i:gif|jpe?g|png)$>
  Order allow,deny
  Deny from all
</FilesMatch>

4.针对URL相对路径的禁止访问:

<Location /dir/>
  Order allow,deny
  Deny from all
</Location>
5.禁止某些IP访问/只允许某些IP访问

如果要控制禁止某些非法IP访问,在Directory选项控制:

<Directory "/var/www/web/">
  Order allow.deny
  Allow from all
  Deny from 10.0.0.1 #阻止一个ip
  Deny from 192.168.0.0/24 #阻止一个ip段
</Directory>
6.只允许某些IP访问,适合比如就允许内部或者合作公司访问(api:http://api.xxx.com:8080=ip域名都可以/project/getProjectList):
<Directory "/var/www/web/">
  Order deny,allow
  Deny from all
  All from example.com #允许某个域名
  All from 10.0.0.1 #允许一个ip
  All from 10.0.0.1 10.0.0.2 #允许多个ip
  Allow from 10.1.0.0/255.255.0.0 #允许一个ip段,掩码对
  All from 10.0.1 192.168 #允许一个ip段,后面不填写
  All from 192.168.0.0/24 #允许一个ip段,网络号
</Directory>
原文地址:https://www.cnblogs.com/cosyer/p/6560074.html