Changeset 78517 in spip-zone


Ignore:
Timestamp:
Nov 15, 2013, 1:46:36 PM (6 years ago)
Author:
arno@…
Message:
  • Fonctionner avec Mod X-Sendfile
  • Supprimer le fichier graphique intermédiaire
Location:
_plugins_/image_responsive
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/image_responsive/action/image_responsive.php

    r78006 r78517  
    177177        $taille = _request("taille");
    178178        $dpr = _request("dpr");
     179       
     180        $xsendfile = _request("xsendfile");
    179181
    180182
     
    187189                else $dpr = false;
    188190               
    189                 $dest = $base."/".$dest.".".$terminaison;
     191                $dest = $base.$dest.".".$terminaison;
    190192
    191193                if (file_exists($dest)) {
     
    206208                        // parce qu'on connait le nom du fichier à l'avance
    207209                        // et on fait donc les tests sans déclencher la cavalerie
    208                         $img = image_reduire_net ($img, $taille, 0, $dpr);
    209                         $img = extraire_attribut($img, "src");
    210                        
    211                         copy($img, $dest);
     210                        $img_new = image_reduire_net ($img, $taille, 0, $dpr);
     211                        $img_new = extraire_attribut($img_new, "src");
     212                       
     213                        copy($img_new, $dest);
     214                        if ($img_new != $img) unlink ($img_new);
    212215                }
    213216                $extension = str_replace("jpg", "jpeg", $terminaison);
    214217                $expires = 60*60*24*14;
    215218       
    216                 header("Content-Type: image/".$extension);
    217                 header("Pragma: public");
    218                 header("Cache-Control: maxage=".$expires);
    219                 header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT');
    220                 header('Content-Length: '.filesize($dest));
    221 
    222                 header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($dest)).' GMT', true, 200);
    223                 readfile($dest);
     219                if ($xsendfile == 1) { 
     220                        //$dest = "/var/www/beach-fashion/$dest";
     221                        //die($dest);
     222                        header("X-Sendfile: $dest");
     223                        header("Content-Type: image/".$extension);
     224                        exit;
     225                } else {
     226                        header("Content-Type: image/".$extension);
     227                        header("Pragma: public");
     228                        header("Cache-Control: maxage=".$expires);
     229                        header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT');
     230                        header('Content-Length: '.filesize($dest));
     231       
     232                        header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($dest)).' GMT', true, 200);
     233                        readfile($dest);
     234                }
    224235       
    225236                               
  • _plugins_/image_responsive/ajouter_a_htaccess.txt

    r77788 r78517  
    11################ REGLAGES PERSONNALISES ######################
    22# Inscrivez ci-dessous vos reglages supplementaires
     3## Si ça déconne, essayer de virer la partie des <ifModule>
     4## si l'erreur vient de là, XSendfile est sans doute installé mais mal configuré.
    35
     6
     7<IfModule xmod_sendfile.c>
     8RewriteRule (.*)\-resp([0-9]+)(\-([0-9\.]+))?\.(jpg|png|gif) index.php?action=image_responsive&img=$1.$5&taille=$2&dpr=$4&xsendfile=1
     9</IfModule>
    410RewriteRule (.*)\-resp([0-9]+)(\-([0-9\.]+))?\.(jpg|png|gif) index.php?action=image_responsive&img=$1.$5&taille=$2&dpr=$4
  • _plugins_/image_responsive/paquet.xml

    r78512 r78517  
    22        prefix="image_responsive"
    33        categorie="outil"
    4         version="1.12.0"
     4        version="1.13.0"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.0.*]"
Note: See TracChangeset for help on using the changeset viewer.