Problème avec un .htaccess - HTML/CSS - Programmation
Marsh Posté le 17-08-2008 à 23:45:12
Tu mets çà dans ton dossier downloads :
Code :
|
Marsh Posté le 18-08-2008 à 10:07:16
Bonjour,
J'ai suivi votre conseil et ça ne marche toujours pas (error 403)
Ce qui me semble en fin de compte assez logique étant donné que aucune ligne allow n'est renseignée...
Auriez vous une autre idée?
Merci encore!
Marsh Posté le 18-08-2008 à 12:52:37
bah y'a pas besoin de "allow" puisque tu veux que personne n'y accède. Donc çà marche !
en tapant
www.monsite/downloads/fichier.doc : erreur 403 !
en tapant :
www.monsite/download.php?file=fichier.doc : çà marche !
(PHP peut accéder aux fichiers malgré la restriction htacess)
Marsh Posté le 18-08-2008 à 15:52:14
Et bien non car la page PHP va chercher les fichiers dans un dossier qui est protégé par ce .htaccess ...
Marsh Posté le 18-08-2008 à 16:23:52
fade2black a écrit : Et bien non car la page PHP va chercher les fichiers dans un dossier qui est protégé par ce .htaccess ... |
non, fait au moins un test :
place un fichier php en dehors de ton dossier downloads avec ce code :
Code :
|
Marsh Posté le 18-08-2008 à 22:01:01
Bonsoir,
Tout d'abord merci de votre aide!
J'ai créé le fichier en question mais quand je cherche à le lancer, mon naviguateur cherche à la télécharger !! Le PHP pas le fichier cible... Savez vous d'ou ça peut venir?
Merci !
Marsh Posté le 18-08-2008 à 22:42:36
tu as bien mis la bonne url de ton fichier ? rajoutes çà :
header("Content-Disposition: attachment; filename=fichier.doc" );
Marsh Posté le 19-08-2008 à 00:21:38
Tu as effectivement raison! Merci encore.
Je vais essayer de revoir mon fichier downloads.php pour trouver l'origine et je te tiens au courant!
Voici le passage concernant le téléchargement :
Je n'arrive pas à trouver ce qui fait que je retombe toujours sur une erreur 403...
Code :
|
Marsh Posté le 20-08-2008 à 16:25:43
fade2black a écrit : Bonsoir, Tout d'abord merci de votre aide! |
C'est normal que ton navigateur cherche à télécharger un fichier puisque tu as le header "Content-Type: application/ms-word". Ton navigateur croit donc à un fichier Word et le télécharge.
C'est le comportement que tu recherches non ?
Ton script php lit le vrai fichier word dans ton dossier protégé puis se "fait passer" pour un fichier word (via le header) et renvoie ce qu'il a lu.
Je pense que ton problème est résolu ou alors il y a un truc qui m'échappe.
Marsh Posté le 21-08-2008 à 13:57:52
Merci pour ces explications, je dois vous avouer que je n'ai pas tout compris... Le problème reste pourtant le même et je me retrouve avec une erreur 403 quand je cherche à télécharger le fichier.
je cherche effectivement que le script php télécharge le fichier mais éviter qu'on puisse directement dans le dossier chercher le fichier. C'est pour ça que j'ai mis un .htaccess dans ce dossier avec tout simplement "Deny from all" et je comprends pas pourquoi mon fichier php ne passe pas au delà de ce .htaccess. Ca devrait être le cas non?
Bonne journée à vous!
Marsh Posté le 21-08-2008 à 17:04:17
Essaie ça:
Code :
|
Attention: la ligne header('Content-Type: application/ms-word'); doit apparaître avant toute chose. Fait gaffe de ne rien mettre avant (notamment pas d'espace avant le tag <?php)
Vérifie aussi que les permissions en lecture (chmod) sont mises à la fois pour le dossier downloads et pour fichier.doc, sans quoi ton script ne pourra pas lire le fichier.
Marsh Posté le 04-09-2008 à 21:25:48
Bonjour,
J'ai moi aussi un problème de .htaccess !
Je ne protège qu'un seul dossier. Sous firefox, pas de problème, sous IE, j'ai un prompt dès l'ouverture du site ...
Mon fichier htaccess :
Code :
|
mon .htpasswd : juste une ligne login:passwd
Marsh Posté le 07-09-2008 à 10:23:15
Personne ,
Marsh Posté le 07-09-2008 à 10:44:46
c'est quoi ton problème ? tu voudrais pas de prompt à l'accès de ton dossier ?
Marsh Posté le 08-09-2008 à 08:07:54
En fait, je veux un prompt juste pour l'accès au folder d'admin. Sous FF, ça fonctionne. Sous IE, j'ai un prompt dès la page d'index du site (lien dans ma signature)
Marsh Posté le 08-09-2008 à 18:34:51
réfléchis un peu, c'est normal...
Tu n'as pas bien compris le rôle du htaccess et la relation client-serveur.
HTACCESS s'applique aux requêtes du client. Si l'accès à l'image est fait depuis le client (via requête HTTP), le HTACCESS va demander une autorisation d'accès. Si c'est depuis le serveur (via PHP par exemple), l'accès sera autorisé.
Il faut que tu passes par une page PHP qui affiche dynamiquement l'image (avec readfile()) et qui soit ciblée par l'attribut src de ton tag img (dans ta page d'accueil).
NOTE : chez moi, (FF), le prompt s'affiche en plus. Et c'est normal.
Ca donne :
image.php
Code :
|
index.html
Code :
|
Marsh Posté le 08-09-2008 à 20:45:35
OK...
Finalement, j'ai la même erreur sous FF. Je suppose que j'avais un cookie d'authentification quelque part. Aujourd'hui, en purgeant tout, j'ai aussi un prompt.
Effectivement, il me manque de grosses notions. Mais j'ai du mal à trouver de l'info claire et pas trop "dense" ...
Je viens de lire pas mal de choses mais j'ai un souci. Comment empêcher l'accès aux répertoires de mon site si tout est en html ?
Marsh Posté le 17-08-2008 à 23:33:52
Bonsoir à tous!
Je cherche à protéger l'accès à un dossier contenant des téléchargements.
Je ne veux pas passer par une authentification mais par (si c'est possible) la provenance des utilisateurs.
Je m'explique : j'aimerais interdire l'accès direct au fichier de type www.monsite/downloads/fichier.doc et obliger l"utilisateur a passer par la section de téléchargement du site de type www.monsite/downloads.php
J'ai alors créé un fichier .htaccess que voici
Mais ça ne marche pas...
Je me suis basé sur un code qui utilisé le fichier .htaccess suivant :
qui ne marchait pas non plus...
Donc voila si vous pouviez m'aiguiller ça serait très sympa!
Merci par avance!