Trouver le nom de domaine d'un site qui est Hotlinking dans le moteur Google app en utilisant web2py
-
12-09-2019 - |
Question
Disons que nous avons une image dans Google App Engine et les sites sont Hotlinking il. Comment puis-je trouver les noms de domaine des sites?
Ma première pensée était:
request.client
et puis faire une recherche inversée mais qu'il est impossible dans GAE et prendrait beaucoup de temps.
Je suis assez sûr qu'il ya une propriété qui me permet d'obtenir l'url du site qui demande le fichier
(Quelque part dans la demande?). GAE a une
La solution Vous pouvez facilement obtenir le referrer des en-têtes de demande. Ce referrer peut être usurpée, mais la plupart des gens n'usurper pas et il est déjà résolu. Il n'y a aucun moyen automatique pour résoudre le DNS autre que la résolution manuellement. Comme vous l'avez dit, une résolution DNS prend du temps et il n'a pas de sens pour web2py ou tout autre cadre pour le faire.
Autres conseils
Si vous êtes à la recherche de trouver les noms de domaine (ne pas bloquer les requêtes en exécutant un script lorsque l'URL de l'image est demandée), ils seront dans les journaux de demande. Dans le thingy admin aller à « Journaux », sélectionnez « demande uniquement » dans le menu déroulant. Si vous développez « Options » vous pouvez filtrer sur le nom du fichier correspondant.
Ensuite, développez chaque entrée du journal de la demande, et le referer est un trait d'union, ou la chaîne entre guillemets immédiatement après le code d'état 200 (ou autre) et la taille transférée. Les chances sont très élevées que tous les clients ont bloqué ou usurpé l'en-tête, de sorte que vous verrez les URL liées.
Vous pouvez télécharger les journaux à l'aide du SDK, et la recherche / processus les localement:
appcfg.py --email=whatever request_logs some_filename