Skip to content
Extraits de code Groupes Projets
Valider a9346f55 rédigé par esj's avatar esj
Parcourir les fichiers

Ce n'est pas parce que certains systèmes d'exploitation que je ne nommerai pas...

Ce n'est pas parce que certains systèmes d'exploitation que je ne nommerai pas pataugent avec certains noms de fichiers qu'il faut considérer [11243] comme une {{fausse bonne idée}} comme le dit [13760]. Je filtre le cas du titre de document n'ayant pas d'extension qui ne doit en effet pas être utilisé comme nom de fichier du {{{Content-Disposition}}} (et encore, {{{Makefile}}} est notoirement recevable), mais autrement je restaure le comportement d'avant qui est une fausse {{fausse bonne idée}}}, autrement dit une vraie bonné idée.

Par contrecoup, report du renforcement de sécurité su secret du site [13866] dans la branche 2.0.
parent e86c45c0
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -82,16 +82,30 @@ function action_acceder_document_dist() {
break;
default:
// Content-Type ; pour les images ne pas passer en attachment
header("Content-Type: ". $doc['mime_type']);
// pour les images ne pas passer en attachment
// sinon, lorsqu'on pointe directement sur leur adresse,
// le navigateur les downloade au lieu de les afficher
header("Content-Type: ". $doc['mime_type']);
if ($doc['inclus']=='non') {
$f = $doc['titre'] ? $doc['titre'] : basename($file);
//header('Content-Type: application/octet-stream');
// Si le fichier a un titre avec extension,
// ou si c'est un nom bien connu d'Unix, le prendre
// sinon l'ignorer car certains navigateurs pataugent
$f = @$doc['titre'];
if (!preg_match('/\.\w+$/', $f) AND $f !== 'Makefile')
$f = basename($file);
header("Content-Disposition: attachment; filename=\"$f\";");
header("Content-Transfer-Encoding: binary");
// fix for IE catching or PHP bug issue
header("Pragma: public");
header("Expires: 0"); // set expiration time
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
}
if ($cl = filesize($file))
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter