8795 sujets

Développement web côté serveur, CMS

Bonjour, je viens de me rendre compte d'un problème!

Quand dans un navigateur je tape l'adresse de mon site en rajoutant le nom d'un dossier qui se trouve sur mon serveur...

tout le monde à accès à ce dossier...

Pourriez-vous m'expliquer une solution pour bloquer l'accès de mon dossier 'includes' par exemple?


On m'a expliqué que je pouvais placer un fichier .htacces qui contient "deny from all" à la racine du dossier que je souhaite interdire Smiley rolleyes , c'est sensé faire une erreur 403...mais ça ne fonctionne pas, l'accès est tjs ouvert...

Est-ce qu'une configuration serveur peut interdire les htacces?

Merci d'avance
Modifié par foxprox (29 Oct 2009 - 16:49)
Salut,

Tu mets un index.html vide ou avec un message d'erreur dans le répertoire, si quelqu'un tape le nom du répertoire, il aura automatiquement accès à la page et non à l'arborescence. A moins qu'il tape aussi un nom de fichier mais là il faut avoir du bol sans savoir ce qui est présent dans le répertoire. Smiley cligne
IL faut que les .htaccess soient autorisés dans la config d'apache, mais ils le sont normalement par défaut.
Bonsoir,

Il suffit de rajouter une petite instructions à l'intérieur du fichier .htaccess pour que l'affichage du contenu de tous les dossiers soit automatiquement refusé :
Options -Indexes 

Smiley cligne
Bonjour, merci pour vos réponses!
Je voulais vous demander, si dans mon fichier .htaccess je place ces deux lignes

deny from all
Options -Indexes

Est-ce que c'est suffisant et correcte? Car mon dans cas, ne fonctionne pas, j'ai tjs accès à tous les fichiers de mon repertoire.

Est-ce qu'il est possible de voir avec un fichier phpinfo(); si les .htaccess sont autorisés, car je ne vois aucune ligne en rapport Smiley rolleyes
Modifié par foxprox (03 Nov 2009 - 09:30)
Non tu ne peux pas le voir dans un phpinfo, il faut regarder dans le httpd.conf, apache2.conf ou le fichier contenant les paramètres du site (dans quelque chose du genre /etc/apache2/sites-availables/)

Pour faire un test très simple, tu mets n'importe quoi dans un .htaccess. Si tu obtiens une erreur 500 c'est qu'il est lu, si tu n'obtiens rien de spécial c'est qu'ils sont complètement ignorés.

Pour qu'ils ne soient pas ignorés, il faut remplacer AllowOverride none par AllowOverride all. J'ai un doute s'il faut un s à AllowOverride ou pas.
Modifié par QuentinC (04 Nov 2009 - 08:05)