Bonjour,
J'ai un site web qui doit être protégé temporairement par un login et un mot de passe.
J'ai donc mis en place un htaccess:
Bref, très classique et qui marche très bien pour l'affichage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 AuthUserFile /.../.htpasswd_WallProtDB AuthName "Protected" AuthType Basic Require valid-user
Là où ça se corse, c'est qu'on peut exporter des données de ce site écrit avec le framework CodeIgniter.
Pour exporter, on sélectionne les données, on clique sur un bouton export et un fichier se crée dans un dossier assets/tmp, assets étant au même niveau que le dossier application et contenant par ailleurs les feuilles de style, le javascript, etc... qui ne posent aucun problème.
Le fichier se cree bien. Un lien apparait alors sur la page et l'utilisateur peut charger son fichier.
Or ce qu'il télécharge contient non pas le fichier qui s'est créé, mais l'erreur suivante:
readfile(http://.../webSite//assets/tmp/expt3.txt): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required
Filename: controllers/download.php
download.php
Je suppose que qu'il faut utiliser les rewrite, mais je ne vois vraiment pas comment...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public function index($filename) { $f=$this->config->item('base_url').'/assets/tmp/'.$filename; header("Content-type: application/force-download"); header("Content-Disposition: attachment; filename=$filename"); readfile($f); //ligne de l'erreur }
Si quelqu'un a un bout de réponse, je l'en remercie vivement,
Sohnic
Partager