<?php define('SITE_ADDR', 'http://example.com') if (empty($_GET['img']) || empty($_SERVER['HTTP_REFERER']) || strncmp($_SERVER['HTTP_REFERER'], SITE_ADDR, strlen(SITE_ADDR)) != 0) die(); $file = './img/' . basename($_GET['img']); if (!file_exists($file)) die(); $finfo = finfo_open(FILEINFO_MIME_TYPE); header('Content-type: ' . finfo_file($finfo, $file)); finfo_close($finfo); readfile($file); ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionCeci dit, ça ne remplacera pas l'image hotlinkée par une autre?
Ton code est il opérationnel en l'état?
Hormis le lien de mon site et le nom du fichier php, dois je y apporter des modifications?
À noter que ce code suppose que les images soient toutes dans le même dossier
Toujours par soucis de sécurité, il faudrait rajouter une contrainte afin de ne jamais faire de readfile() de fichiers commençant par un point (fichier caché ou bien répertoire courant/supérieur).
Je dois donc mettre readfile(lien-de-mon-image-de-remplacement) à la place de die()?
Le répertoire image c'est cette ligne?
$file = './img/'
où /img/ est le répertoire?
Je peux placer ce fichier php dans le répertoire image et créer ensuite un fichier par répertoire en modifiant bien entendu le nom du répertoire?
Là c'est du chinois pour moi
Je ne dois donc pas remplacer die() par readfile()?
$imagedir = "/put/your/full/image/directory/path/here/" ;
@readfile( "/your/replacement/image/filepath.gif" );
J'ai trouvé ce script qui a l'air pas mal du tout, qu'en penses tu?
Tu crées une fonction JS qui récupère toutes les images de ta page et les remplace par les vraies images en fonction de l'id.
Ce que tu cherches à faire n'est pas si simple que cela. Si tu ne te bases que sur le HTTP-REFERER tu risques de priver pas mal d'internautes de tes photos, sans compter certains moteurs de recherche (ce dernier point étant à vérifier)
J'en tendance à penser que le javeScript est bien pire en terme d'accessiblité,
Je me demande bien comment on peut être capable de surfer sur le Web sans JS.
Quel rapport entre un sys admin, Lynx et une interface utilisateur (ce sujet) ???
kohntark, tu me parles de référencement, mais uniquement au niveau des images?
Maintenant si effectivement il doit me poser des problèmes, ou à mes visiteurs, je peux utiliser celui que tu me fourni TychoBrahe
Le rapport est que lynx ne supporte pas du tout le JS, donc pour réagir au fait que tu prône ne non-support des clients n'utilisant pas JS car trop rares