Linux dağıtımındaki tüm "gizli" dosyaları ve dizinleri basitçe reddetmek isteyenler için (genellikle "." İle başlayan tüm dosyalar), sunucu yapılandırma bağlamına yerleştirildiğinde Apache 2.4'te çalışanlar:
<FilesMatch "^\.(.*)$">
Require all denied
</FilesMatch>
<DirectoryMatch "/\.(.*)">
Require all denied
</DirectoryMatch>
Ve işte eski Apache 2.2 tarzı (aynı regex, sadece farklı auth yönergeleri):
<FilesMatch "^\.(.*)$">
Order deny,allow
Deny from all
</FilesMatch>
<DirectoryMatch "/\.(.*)">
Order deny,allow
Deny from all
</DirectoryMatch>
O zaman .git
ya da .svn
özellikle endişelenmenize gerek yok . Bu aynı zamanda gibi .htaccess
ve .htpasswd
doğal olan şeylerle de eşleşir .
Şahsen, 404'ler yerine bu tür isteklere 403'ler vermeyi seviyorum, ancak benzer şekilde reddetmek yerine kolayca bir RewriteRule kullanabilirsiniz:
<FilesMatch "^\.(.*)$">
RewriteRule "^(.*)$" - [R=404,L]
</FilesMatch>
<DirectoryMatch "/\.(.*)">
RewriteRule "^(.*)$" - [R=404,L]
</DirectoryMatch>