web-dev-qa-db-fra.com

Comment vérifier si quelqu'un utilise les ressources de mon site?

Comment puis-je vérifier si quelqu'un utilise les ressources hébergées sur mon site Web?

J'ai un site web (codé en PHP) et j'y ai téléchargé quelques images. Je veux savoir qui utilise ces images sur d'autres sites. Normalement, les gens utilisent l’image URL pour accéder à des images de mon site Web et les afficher.

Je n'ai pas besoin du code, j'ai juste besoin de directives. Si vous pouvez me donner un pseudo-code, c'est très apprécié aussi: P

EDIT:
En voyant les réponses, j’ai le sentiment que ma question n’était pas bien posée, alors reformulons:

J'ai besoin du code PHP pour savoir qui utilise les images hébergées sur mon site.

Est-ce possible en PHP? Si oui, quel devrait être l'algorithme pour cela? Des directives de codage?

1
Zaffar Saffee

Il n’existe aucun moyen de connaître les informations relatives aux demandes adressées directement aux images hébergées sur votre site à l’aide de PHP. Étant donné que l'image a été affichée de manière statique, aucun script PHP n'est exécuté.

Vous pouvez conserver toutes vos images en dehors de votre racine Web et les charger via un script PHP:

  1. Vérifie la chaîne de requête pour déterminer quelle image servir
  2. S'assure que l'image existe
  3. Génère un en-tête de type de contenu approprié
  4. Génère un ensemble approprié d’en-têtes de contrôle de cache
  5. Lit les données d'image et les sort

Il devrait également traiter les requêtes If-Modified-Since et ainsi de suite. (Donc, ce serait beaucoup d'efforts pour bien faire les choses).

Une fois que cela est fait, vous pouvez enregistrer n'importe quelle information dans $_SERVER, y compris $_SERVER['HTTP_REFERER'], qui vous indiquerait l'URL d'un site Web menant à votre image ou l'intégrant (en fournissant à l'utilisateur du navigateur dissimule l'en-tête du référent).

Vous êtes vraiment mieux de simplement obtenir les informations sur le référant à partir des journaux de votre serveur Web.

6
Quentin

Vous pouvez vous connecter le référant:

$_SERVER['HTTP_REFERER'];

Mais notez que ceci est ajouté par le client et peut être remplacé. Mais cela devrait vous donner une indication de la façon dont votre site est utilisé.

Vous pouvez également utiliser quelque chose comme Google Analytics pour suivre les utilisateurs.

0
Bjørne Malmanger

Ce guide traite de la protection des ressources de vos sites à l'aide de PHP

http://safalra.com/programming/php/prevent-hotlinking/

0
Anagio