8796 sujets

Développement web côté serveur, CMS

Bonjour!
Sur mon site j'utilise une section gestion pour permettre la mise à jour rapide de certaines partie du site.
Le dit dossier gestion a un accès restreint à l'aide d'un fichier .htaccess. Mon problème se situe à ce niveau. Lors que je tape l'adresse du site puis ajoute gestion à la suite, je tombe directement sur une page Forbidden... alors que je m'attend plutôt à voir une petite fenêtre apparaître me demandant mon nom et mot de passe.

Bref ça ne fonctionne pas!

voici le contenu de mon fichier .htaccess:

AuthUserFile "/gestion/.htpasswd"
AuthGroupFile /dev/null
AuthName "Connexion à la gestion du site"
AuthType Basic

require valid-user

DirectoryIndex galerie_admin.php 

Deny from all

J'ignore si c'est mon fichier qui pose problème ou autre chose...

Quelqu'un serait-il en mesure de m'aider sur ce coup?
Modifié par juliesunset (18 Mar 2010 - 20:27)
Salut,

ce serait plutôt quelque chose comme :
AuthUserFile /home/www/gestion/.htpasswd
AuthGroupFile /dev/null
AuthName "Connexion à la gestion du site"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>
Pour connaître le chemin du .htpasswd il faut afficher en PHP la valeur de $_SERVER['DOCUMENT_ROOT']
Merci pour ta réponse rapide Heyoan!

Ça y est presque! En bout de compte j'étais pas ci loin!

Maintenant j'ai le formulaire qui apparait mais une fois que j'entre nom et mot de passe, ça ne m'affiche rien... le formulaire est simplement réinitialisé, sans me donner l'accès.
Modifié par juliesunset (17 Mar 2010 - 18:02)
Soit les login/password sont erronés, soit le chemin vers le .htpasswd est faux (mais je ne sais pas si tu n'aurais pas une erreur dans ce cas).

Le plus simple serait de recréer ce fichier en te basant sur ce tuto.
Modifié par Heyoan (18 Mar 2010 - 00:04)
J'y est bien pensé, c'est pourquoi j'ai mis le lien complet et exacte de ce que m'indiquait mon serveur ftp. Donc de ce côté là normalement ça devrait être correct.

Après si le problème se situe au niveau de mon htpasswd... bas là je sèche.

C'est bien ça qu'il faut indiquer dedans?:

username:password


Je regarde le tuto que tu as mis, mais je n'avance pas.
Il faut crypter le mot de passe. Manque de chance le formulaire de webmaster-hub ne fonctionne plus. Tu peux le faire en PHP avec :
$password = 'test'; // Ton mot de passe
echo crypt($password);
Par exemple cela peut donner pour login = test / password = test
test:$1$9J/.cg/.$XORI4fv8sdUhIrrnfOcqH.
Oui je sais que je doit crypter, j'ai juste pas encore fait.
Merci pour le ti-code, je vais l'essayer!

Finalement il semblerait que le problème ça soit mon chemin dans le AuthUserFile.
J'avais écris comme ça, mais ça ne fonctionne pas...

AuthUserFile "/var/www/html/gestion/.htpasswd"
AuthGroupFile /dev/null
AuthName "Connexion à la gestion du site"
AuthType Basic
<limit GET POST>
 require valid-user
</Limit>

DirectoryIndex galerie_admin.php  http://www.spypoint.com/403.html
 
J'en conclue que quand tu fais
echo($_SERVER['DOCUMENT_ROOT']);
ça te donne /var/www et que ton fichier .htpasswd est dans un dossier gestion lu-même placé dans un dossier html ?
Smiley langue Tu m'as devancé! J'ai trouvé un petit bout de code pour me donné le chemin exacte d'une page.

J'ai fait ça dans un dossier situé au même niveau que le dossier gestion, et ben ça me donne exactement la même structure que j'avais écris.

Soit : /var/www/html/gestiontest/chemin.php

Donc logiquement mon chemin est le bon.
Bon j'ai contacté le responsable de mon serveur, ce dernier me dit qu'il faut que je mette tout en minuscules dans mon fichier htpasswd. C'est beau pour les user, mais en ce qui concerne les password...
Si le problème n'est que là... Smiley eek

Ton code Heyoan est très pratique, mais le crytage me fait des majuscules. J'arrive à me débrouiller en php mais, là je me demande s'il y a un moyen de faire en sorte que je cryptage ne soit qu'en minuscules...

EDIT: Bon j'ai fouillé un peu dans mes notes, et puis dans le code de cryptage j'ai fait comme ça:

$password = 'mot de passe'; // Ton mot de passe 
echo strtolower(crypt($password));


Ça m'a donner un code cryté en minuscules, mais je n'arrive toujours pas à accéder aux pages protégé.
Modifié par juliesunset (17 Mar 2010 - 21:44)
juliesunset a écrit :
Donc logiquement mon chemin est le bon.
Yep.

juliesunset a écrit :
Bon j'ai contacté le responsable de mon serveur, ce dernier me dit qu'il faut que je mette tout en minuscules dans mon fichier htpasswd.
Ben alors je suppose que ça veut dire qu'il ne faut pas crypter le mot de passe. Au passage si tu as un responsable pourquoi ne pas voir avec lui ?

juliesunset a écrit :
Ça m'a donner un code cryté en minuscules
Oui mais non : les majuscules font partie du cryptage.
Heyoan a écrit :
Ben alors je suppose que ça veut dire qu'il ne faut pas crypter le mot de passe. Au passage si tu as un responsable pourquoi ne pas voir avec lui ?

Je voulais voir de mon côté avant de "l'importuné"... comme à mon habitude!

Heyoan a écrit :
Oui mais non : les majuscules font partie du cryptage.

erf! bon, de toute façon même avec le mot de passe non crypté ça ne fonctionne pas.
Je fais un retour dur le sujet...

Finalement je ne devait pas utiliser de fichier htaccess Smiley biggol , je devait plutôt aller directement dans mon panneau de configuration du serveur du site pour aller protéger les dossiers voulu de façon manuel.

Le problème niveau htaccess est donc résolut puisque mes fichiers étaient belle et bien correct. Le problème se situait plutôt du côté du serveur!
Comme tu dis!
Au moins je n'ai pas à géré le fichiers du genre...

En attendant le destin semble s'acharner sur moi! Smiley pleure L'une de mes pages s'affiche en blanc... pourtant à l'interne elle fonctionne bien...

vais aller faire un tour du côté de la rubrique des débutants... J'vas-tu être contente quand il va être officiellement lancé ce site tu pense! Smiley mur