有一个比较奇怪的需求:Apache 服务器,需要对 .
开头的文件和目录进行屏蔽。比如 .env
、.data
什么的目录是不能被访问到的。
Nginx 下面配置比较简单,可以参考 LNMP 一键安装包里面的配置文件。但是 Apache 就相对麻烦一些了。
这里直接贴出配置。
<FilesMatch "^\.">
Require all denied
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
<DirectoryMatch "^(.*/)*\..*">
Require all denied
Order allow,deny
Deny from all
Satisfy All
</DirectoryMatch>
<LocationMatch ^(.*/)\..*>
Require all denied
Order Allow,Deny
Deny from All
Satisfy All
</LocationMatch>
这样不仅可以屏蔽掉 .htaccess
、.htpasswd
等文件,也可以屏蔽掉所有点开头的文件夹。
然而!我还有一个需求!在用 Let’s Encrypt 配置 ssl 证书的时候,需要放开对 .well-known
文件夹的访问权限。也就是给 .well-known
设置一个漏网之鱼。不然每次续期都需要编辑配置文件。
这个如何设置?
发表回复