2013-06-01 26 views
0

RE:Make .git directory web inaccessible让所有的拒绝.git目录更加用户友好

目前,我有以下几点:

<Directorymatch "^/.*/\.git/"> 
    Order deny,allow 
    Deny from all 
</Directorymatch> 

取而代之的是500错误页面,有没有修改的方式。上面的htaccess代码,使它只是去主域名?提前致谢。

UPDATE

我也有以下的mod_rewrite这让我更接近:

RewriteEngine On 
RewriteRule "^(.*/)?\.git/" http://%{HTTP_HOST}/? [L] 

但是,只有触发如果 “domain.com/.git”,而不是任何孩子的.git文件夹。例如。

domain.com/folder/.git 
domain.com/folder/sub-folder/.git 

在此先感谢您的帮助。

回答

2

好的,这似乎适用于我所要求的。

解决方案1 ​​。如果您想重定向到域根(W/mod_rewrite的):

RewriteEngine On 
RewriteRule ^(.*/)?\.git+ http://%{HTTP_HOST}/? [L] 

解决方案2。如果你想发出一个404(W/mod_rewrite的):

RewriteEngine On 
RewriteRule ^(.*/)?\.git+ - [R=404,L] 

备用解决方案。如果mod_rewrite不可用:

RedirectMatch 404 ^(.*/)?\.git+ 

我与解决方案2和后备。我希望有所帮助。