Apache .htaccess: sert les fonts de caractères précompressées @ font-face

J’ai besoin d’Apache pour servir des fonts précompressées (sans utiliser de déflater).

Mon fichier .htaccess dans le dossier / path_to / fonts / ressemble

RewriteEngine On RewriteBase /path_to/fonts/ RewriteCond %{HTTP:Accept-Encoding} .*gzip.* RewriteRule (.*)\.ttf $1.ttf.gz AddEncoding x-gzip gz RemoveType application/x-gzip .gz 

En-têtes de réponse:

 Accept-Ranges bytes Connection Keep-Alive Content-Encoding **gzip** Content-Length **31709** Content-Type **text/plain** Date Tue, 06 Mar 2012 18:14:51 GMT Etag "7200000008e241-7bdd-4ba954a7395a8" Keep-Alive timeout=5, max=99 Last-Modified Tue, 06 Mar 2012 16:11:08 GMT Server Apache/2.2.11 (Win32) PHP/5.2.9 Vary Accept-Encoding 

La longueur du contenu indique 31709, ce serait la taille compressée, mais je ne peux pas la télécharger.

Pourriez-vous donner un indice?

Voici ma solution Il a un peu plus de vernis.

Il ne définira pas le type et le codage à moins que le client ne prenne en charge gzip. Déclare également les modules utilisés afin que rien ne se produise si tous les modules ne sont pas pris en charge.

Structure du dossier:

 fonts/ Shanti-Regular.ttf.gz Federo-Regular.ttf.gz Shanti-Regular.ttf Federo-Regular.ttf .htaccess 

Ensuite, .htaccess contient:

 # Rewrite URLs to add gzipped version of font when it exits.   RewriteEngine on #Serve gzip compressed TTF files if they exist and the client accepts gzip. RewriteCond %{HTTP:Accept-encoding} gzip RewriteCond %{REQUEST_FILENAME}\.gz -s RewriteRule ^(.*)\.ttf $1\.ttf\.gz [QSA] # update the response header of compressed file # makes browser think mod_gzip did it.  AddEncoding gzip .gz ForceType "application/x-font-ttf"