2010-05-02 11 views
0

Je suis en train de préfixer un script gzip au début de chaque fichier en utilisantExclure un fichier dans un filematch

php_value auto_prepend_file gzip_start.php 

dans mon .htaccess. Le problème est que j'ai déjà un document appelé combine.php qui gzips le contenu. Ce que j'ai besoin de savoir, c'est comment je peux exclure combine.php des fichiers qui ont ajouté le gzip. J'ai pensé à l'utilisation de filesmatch, mais je peux seulement comprendre comment le faire sur ce seul fichier, et pas exactement le contraire.

Des idées?

Répondre

0

Mettez ce code au début de gzip_start.php:

if(preg_match("/.*combine\.php.*/i", $_SERVER['PHP_SELF'])) { 
    // just output its content 
} 
else{ 
    // output gzipped content 
} 

Lecture de la doc PHP:

Specifies the name of a file that is automatically parsed before the main file. 
The file is included as if it was called with the require() function, so 
include_path is used. 

Dans ce cas, gzip_start.php est inclus par chaque script que vous avez, combiner .php aussi, donc vous pouvez vérifier quel script inclut le fichier et ensuite faire la compression ou l'ignorer si le fichier doit être ignoré.

+0

J'ai déjà essayé cette solution, mais je n'ai pas trouvé ça satisfaisant. Le problème est que les fichiers qui n'ont pas besoin de cookies - images et autres - demandent maintenant un cookie. Activité inutile ... Si le fichier est détecté par le serveur, je n'ai pas besoin de demander le fichier comme ça. –