Aller au contenu

allatoja

Membre
  • Compteur de contenus

    3
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre
  1. D'accord, merci pour cette réponse, je vais jeter un oeil du côté de YIU Compressor! Cordialement
  2. Bonjour Kioob, Oui, pourquoi pas, mais je préférerais terminer ce que j'ai commencé. C'est si compliqué que cela, de configurer ce combine.php?
  3. Bonjour à tous, J'ai construit un site internet qui utilise plusieurs scripts, d'une taille totale de 39Ko. Comme je trouve que c'est un peu trop, j'ai cherché comment réduire leur taille, et trouvé ceci qui a l'air intéressant: http://www.blackotine.fr/non-classe/compre...vascript-et-css Mon problème: je crois avoir suivi scrupuleusement les instructions, et pourtant, cela ne marche pas, ce qui signifie que sur ma page de test les scripts ne fonctionnent pas. J'ai vérifié tous les trucs idiots (y a-t-il des problèmes de majuscules, les chemins d'accès sont-ils les bons, etc). J'utilisais déjà un fichier .ht access qui fonctionne sans problème. J'en suis arrivée à la conclusion que c'est ce fameux fichier combine.php qui est mal configuré. C'est pourquoi je viens chercher de l'aide, car le langage php est du chinois pour moi!!... Quelqu'un pourrait-me dire quels sont les paramètres qu'il faut modifier et adapter à chaque utilisateur?...Merci d'avance! Voilà le code: <?php $cache = true; $cachedir = dirname(__FILE__) . '/cache'; $cssdir = dirname(__FILE__) . '/css'; $jsdir = dirname(__FILE__) . '/javascript'; // Determine the directory and type we should use switch ($_GET['type']) { case 'css': $base = realpath($cssdir); break; case 'javascript': $base = realpath($jsdir); break; default: header ("HTTP/1.0 503 Not Implemented"); exit; }; $type = $_GET['type']; $elements = explode(',', $_GET['files']); // Determine last modification date of the files $lastmodified = 0; while (list(,$element) = each($elements)) { $path = realpath($base . '/' . $element); if (($type == 'javascript' && substr($path, -3) != '.js') || ($type == 'css' && substr($path, -4) != '.css')) { header ("HTTP/1.0 403 Forbidden"); exit; } if (substr($path, 0, strlen($base)) != $base || !file_exists($path)) { header ("HTTP/1.0 404 Not Found"); exit; } $lastmodified = max($lastmodified, filemtime($path)); } // Send Etag hash $hash = $lastmodified . '-' . md5($_GET['files']); header ("Etag: \"" . $hash . "\""); if (isset($_SERVER['HTTP_IF_NONE_MATCH']) && stripslashes($_SERVER['HTTP_IF_NONE_MATCH']) == '"' . $hash . '"') { // Return visit and no modifications, so do not send anything header ("HTTP/1.0 304 Not Modified"); header ('Content-Length: 0'); } else { // First time visit or files were modified if ($cache) { // Determine supported compression method $gzip = strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'); $deflate = strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'deflate'); // Determine used compression method $encoding = $gzip ? 'gzip' : ($deflate ? 'deflate' : 'none'); // Check for buggy versions of Internet Explorer if (!strstr($_SERVER['HTTP_USER_AGENT'], 'Opera') && preg_match('/^Mozilla\/4\.0 \(compatible; MSIE ([0-9]\.[0-9])/i', $_SERVER['HTTP_USER_AGENT'], $matches)) { $version = floatval($matches[1]); if ($version < 6) $encoding = 'none'; if ($version == 6 && !strstr($_SERVER['HTTP_USER_AGENT'], 'EV1')) $encoding = 'none'; } // Try the cache first to see if the combined files were already generated $cachefile = 'cache-' . $hash . '.' . $type . ($encoding != 'none' ? '.' . $encoding : ''); if (file_exists($cachedir . '/' . $cachefile)) { if ($fp = fopen($cachedir . '/' . $cachefile, 'rb')) { if ($encoding != 'none') { header ("Content-Encoding: " . $encoding); } header ("Content-Type: text/" . $type); header ("Content-Length: " . filesize($cachedir . '/' . $cachefile)); fpassthru($fp); fclose($fp); exit; } } } // Get contents of the files $contents = ''; reset($elements); while (list(,$element) = each($elements)) { $path = realpath($base . '/' . $element); $contents .= "\n\n" . file_get_contents($path); } // Send Content-Type header ("Content-Type: text/" . $type); if (isset($encoding) && $encoding != 'none') { // Send compressed contents $contents = gzencode($contents, 9, $gzip ? FORCE_GZIP : FORCE_DEFLATE); header ("Content-Encoding: " . $encoding); header ('Content-Length: ' . strlen($contents)); echo $contents; } else { // Send regular contents header ('Content-Length: ' . strlen($contents)); echo $contents; } // Store cache if ($cache) { if ($fp = fopen($cachedir . '/' . $cachefile, 'wb')) { fwrite($fp, $contents); fclose($fp); } } } ?>
×
×
  • Créer...