J'ai pas mal de sites qui reprennent des images du mien en hotlink, et ça me prend beaucoup de bande passante.
Au lieu d'interdire carrément le hotlink, j'ai fais un script php qui leur retourne l'image mais avec un petit message incrusté dedans du genre "cette image est hébergée sur le site machin.com", de cette manière ça dissuade les sites commerciaux de reprendre ces images et autorise la reprise sur les forums par exemple.
Pour effectuer la redirection, je suis passé par le .htaccess: pour toutes les images demandées par d'autres sites que le mien, exécution du script qui incrustera le message et envoie de l'image modifiée.
Tout marche très bien sauf un petit problème: les images ainsi générées ne sont pas mises en cache dans le navigateur du demandeur et sont donc re-générées et retransmises même si c'est la même personne qui les redemande, ce qui prend du CPU et de la Bande Passante.
Ma question est donc: y-a-t'il un moyen de mettre ces images dans le cache du navigateur du demandeur
Pour info, j'ai mis dans le header des images générées une balise sensée forcer la mise en cache, mais rien n'y fait. Je ne sais pas si le problème vient de la redirection .htaccess ou de la génération de l'image.
L'entête de mon fichier généré:
Code :
- header("Content-type: image/jpeg" );
- header('Expires: ' . gmdate('D, d M Y H:i:s', time()+30*24*60*60) . ' GMT');
|
Voici un exemple d'image:
Message édité par @ttil@ le 22-01-2005 à 00:57:52
---------------
Techno-science.net: Actualité des sciences et techniques