你如何隐藏.git项目目录?
现在,我有nginx设置我需要能够隐藏我的.git
目录。 我需要什么样的重写才能停止窥探? 并在server {}
或http {}
块中的哪个地方去?
http { server { location ~ /\.git { deny all; } } }
此location
指令将拒绝访问任何子目录中的任何.git
目录。
注意:这个位置块必须位于你的主要位置块之前,这样它才能被首先评估。
隐藏的目录和文件不应该是Web访问。 你的问题的一般答案是:
location ~ /\. { return 403; }
这会拒绝访问任何子目录中的.git,.svn,.htaccess和类似文件。
这将防止有人击中http://example.com/.git,但如果你在像这样的http://example.com/example/.git这样的子目录中工作,将会失败。; 你真的需要:
location ~ .*/\.git { deny all; }