[WEB]Un méchant .htaccess

Résolu/Fermé
MickaToast Messages postés 142 Date d'inscription mercredi 19 février 2014 Statut Membre Dernière intervention 23 juillet 2015 - Modifié par MickaToast le 2/08/2014 à 02:34
MickaToast Messages postés 142 Date d'inscription mercredi 19 février 2014 Statut Membre Dernière intervention 23 juillet 2015 - 3 août 2014 à 02:53
Bonsoir,

Voilà mon problème. Je dispose d'un dossier "root" où se trouve un fichier "login.php". Dans ce fichier "login.php" il y a un formulaire de type POST. Une fois ce formulaire rempli et envoyé, je fais vérifier les valeurs dans un fichier nommé "login_process.php" qui se trouve dans un dossier nommé "secret", si les identifiants sont correct alors j'envoi l'utilisateur vers une page, sinon l'utilisateur retourne sur "login.php".
Le souci, c'est que je voudrais restreindre le dossier "secret", j'ai donc pensé à créer un .htaccess dans le dossier "secret" avec comme instruction "deny from all", mais le souci c'est que vu qu'il affecte ce dossier, et donc le fichier "login_process.php", je ne peux plus envoyer mon formulaire à partir de "login.php" (j'obtiens tout simplement une erreur 403 à cause du .htaccess).
Alors, comment faire?

Merci d'avance pour vos réponses :)!
A voir également:

6 réponses

Danelectro Messages postés 1723 Date d'inscription samedi 25 février 2012 Statut Membre Dernière intervention 29 mars 2018 369
2 août 2014 à 02:52
Salut,
J'avais eu la même erreur avec du CSS qui était dans un dossier privé.
Je ne sais plus comment j'avais réglé le problème, je crois que je l'avais rendu public, ce qui ne va pas dans ton cas.
Essaie de mettre un "Require user www-data".
0
MickaToast Messages postés 142 Date d'inscription mercredi 19 février 2014 Statut Membre Dernière intervention 23 juillet 2015 24
Modifié par MickaToast le 2/08/2014 à 03:11
Salut,
J'ai essayé de mettre seulement "Require user www-data" dans le .htaccess mais j'ai obtenu une erreur 500 (Internal Server Error). D'ailleurs, je ne connais pas du tout le fonctionnement des fichiers .htaccess, donc si j'ai fais une erreur quelque part, je m'excuse d'avance :D
0
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
2 août 2014 à 14:30
Si ton fichier "login_process.php" n'est pas accessible et se situe dans un dossier à accès limité, c'est qu'il ya un problème de conception de tes pages et scripts. Comment voudrais-tu authentifier tes utilisateurs si ce fichier n'est pas accessible ?
0
MickaToast Messages postés 142 Date d'inscription mercredi 19 février 2014 Statut Membre Dernière intervention 23 juillet 2015 24
2 août 2014 à 15:51
Bonjour jisisv,

A la base, le fichier est accessible et fonctionne très très bien lors de la vérification de l'authentification via le formulaire login.php. Maintenant, ce que je voudrais c'est d'empêcher l'accès direct au fichier login_process.php.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
arthak Messages postés 13 Date d'inscription mercredi 30 juillet 2014 Statut Membre Dernière intervention 5 août 2014
2 août 2014 à 16:02
Dans ton fichier login_process.php, je te conseille de mettre en place des fonctions qui seront par la suite appelées dans ton fichier principal. Ceci aura pour conséquence de rendre ton fichier vide en cas de lecture.

Peux-tu éventuellement poster une partie du code des deux pages ?

--
0
MickaToast Messages postés 142 Date d'inscription mercredi 19 février 2014 Statut Membre Dernière intervention 23 juillet 2015 24
Modifié par MickaToast le 2/08/2014 à 22:38
De toute façon à la lecture du fichier rien ne sera affiché, c'est un fichier qui renvoi vers différentes page. Si le compte est valide on renvoi sur la page A, sinon, on renvoi sur la page B, rien de plus simple. En fait, la page login_process.php s'ouvre une microseconde pour ensuite rediriger l'utilisateur vers la page qui correspond.

if(!empty($_POST["user"])) //Si on vient du formulaire de la page login.php
{
//code ici
}
else
{
header("Location:..\login.php"); //Redirection vers la page login.php
}


De base j'ai ce code qui empêche un utilisateur d'ouvrir login_process.php directement depuis l'URL. Est-ce que cela suffit?
0
arthak Messages postés 13 Date d'inscription mercredi 30 juillet 2014 Statut Membre Dernière intervention 5 août 2014
3 août 2014 à 00:01
Tout à fait. Côté client, rien ne sera affiché et même si la page contient des mots de passe, cela suffit effectivement.
0
MickaToast Messages postés 142 Date d'inscription mercredi 19 février 2014 Statut Membre Dernière intervention 23 juillet 2015 24
3 août 2014 à 02:53
De toute façon j'ai l'habitude de crypter tous les mots de passe qui transit sur mes pages!

En tout cas merci beaucoup pour les réponses!
0