网站生产环境禁用掉 .git 目录的访问

文章目录

    这个一个严重的安全问题。如果允许访问 .git 目录,那么打开你的网站,拼接出 .git/config 文件所在地址,会发现 config 文件立马被下载到了本地,如果你的密码写在了里面,恭喜你

    https://accout:password@github.com/project …

    再或者,拼接出 .git/logs/HEAD 文件地址,会看到提交的信息。

    解决办法

    Nginx 上将 .git 目录禁止访问

    location ~ /\.git {
      deny all;
    }
    

    更彻底的方法,最好将所有的隐藏目录都禁用掉

    # or, all . directories/files in general (including .htaccess, etc)
    location ~ /\. {
      deny all;
    }
    

    参考