162 votes

Faire .git annuaire web inaccessible

J'ai un site que j'utilise github (à code source fermé) suivi des modifications et mise à jour du site. Le seul problème est, il semble que l' .répertoire git est accessible via le web. Comment puis-je arrêter cela et être encore capable d'utiliser git?

Dois-je utiliser .htaccess? Dois-je modifier les autorisations de .git?

464voto

Bennett McElwee Points 5750

Mettez dans un .htaccess le fichier à la racine de votre serveur web:

RedirectMatch 404 /\.git

Cette solution est robuste et sécurisé: il

  • fonctionne pour tous les .git répertoires de votre site, même si il y a plus d'un,
  • cache également d'autres Git fichiers comme .gitignore et .gitmodules
  • fonctionne même pour les nouvellement ajoutés .git annuaires, et
  • ne lui donne même pas le fait que les répertoires existent.

47voto

ThiefMaster Points 135805

Créer un .htaccess le fichier dans l' .git le dossier et placez la ligne suivante dans ce fichier:

Order allow,deny
Deny from all

38voto

Jake Wharton Points 26095

Les deux .htaccess et les autorisations sur l' .git/ dossier de travail. Je recommande l'ancienne:

<Directory .git>
    order allow,deny
    deny from all
</Directory>

EDIT: Fixe

11voto

PETER Points 534

L'inclure dans .htaccess:

<Files .git/*>
    order allow,deny
    deny from all
</Files>

Cela a fonctionné pour moi lorsque j'ai reçu un <Directory not allowed here d'erreur.

Un commentaire:
C'est un très précaire solution! Le "*" ne correspond pas "/" les fichiers dans des sous-répertoires seront accessibles! Par exemple, même si vous avez la section ci-dessus, .../.git/info/exclure seront accessibles, ainsi que tous les fichiers dans les branches, les crochets, les journaux, les objets et les références des sous-répertoires! Donc, NE PAS utiliser cette solution!!!

5voto

Kosh Points 57

mod_rewrite va vous donner l'effet désiré:

RewriteEngine on
RewriteRule .*\.git/.* - [F]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X