8795 sujets

Développement web côté serveur, CMS

Bonjour,

J'ai une authentification en php. Ensuite pour protéger le contenu d'un dossier j'ai mis en place une protection en htaccess. Lorsqu'un fichier vidéo se trouvant dans le dossier protégé en htaccess doit être lu, apache demande une nouvelle authentification (normal!).
Y a t-il un moyen d'éviter cela (avec $_SERVER['PHP_AUTH_USER'] et $_SERVER['PHP_AUTH_PW'] par exemple) ?
Merci de votre aide
Bonjour,

$_SERVER est une superglobale PHP. elle est donc spécifique à PHP. Les indexes PHP_AUTH_USER et PHP_AUTH_PW font référence aux login/mdp saisis par l'utilisateur lors d'une authentification via une en-tête HTTP.

Dans le cas où ton répertoire est protégé grâce à un htaccess - donc spécifique à apache - il n'y a pas de moyen de "forcer" le passage d'un nom d'utilisateur/mdp au serveur. Au moment d'accéder au répertoire, le serveur envoi une reponse au client, avec une en-tête demandant l'authentification. Le PHP n'intervient donc à aucun moment.

Une solution serait de passer par un fichier PHP passerelle : tu appelles ce fichier en lui passant en paramètre le chemin vers le fichier que tu cherches à récupérer. Le PHP vérifie si l'utilisateur est authentifié (grâce aux sessions par exemple), et si oui, il retourne le contenu du fichier en question (fonction read();) ...

J'espère que ça t'aide Smiley cligne