Le lit de l'image du gîte n'a pas réussi à se charger, reproduisons la scène du crime et le principe de l'anti-sangsue

Cet après-midi, des amis dans le groupe et dans le cercle d'amis ont signalé que les photos dans le lit photo Gitee ne peuvent pas être ouvertes

image.png

Dans cet article, j'utilise https://gitee.com/Topcvan/js-notes-img/raw/master/%E5%AE%8F%E4%BB%BB%E5%8A%A1%E9%98%9F%E5%88%97.pngcette image comme exemple pour reproduire l'incident.

chaîne antivol

Je me suis dit, ça doit être l'ajout soudain de la chaîne antivol, regardons le principe de la chaîne antivol :

Referer fait référence à l'adresse de la page source de la page de requête en cours, qui est utilisée pour déterminer la source d'accès de la page en cours. La chaîne antivol image remplace l'image par l'image du panneau d'interdiction en jugeant Referers'il s'agit du site web cible.

Referer est en fait referrerune faute d'orthographe du mot

Par exemple, dans cet événement gitee, lorsque toutes les images du site gitee sont chargées, le navigateur ajoutera par défaut le dernier en-tête de requête à l'image : referer: https://gitee.com/. Sur d'autres sites Web, si le champ d'en-tête de la demande de référence n'est pas le site Web de gitee, une image d'espace réservé sera renvoyée.

Cependant, en général, l'image anti-hotlinking peut être ouverte directement dans le navigateur, car elle ne portera pas le champ d'en-tête de refererrequête lorsqu'elle sera ouverte directement dans le navigateur, et la configuration anti-leech le permettra.

Si tel est le cas, si vous êtes sur un site Web personnel, vous pouvez configurer toutes les demandes d'images sans champs d'en-tête de demande via la politiqueReferer de référence pour contourner les paramètres anti-leech .

<meta name="referrer" content="no-referrer">
复制代码

À cette fin, j'ai spécialement créé deux pages Web et les ai comparées en fonction des images d'URL mdnice qui ont été configurées avec l'anti-leech :

403

Ah oui, quand vous ouvrez deux URL à ce moment là, pensez à désactiver le cache dans la console du navigateur : (PS : ajoutez un Vary : referer pour interdire ce genre de problèmes)

image.png

Cependant, cela ne fonctionne pas pour le gîte !

mesures anti-sangsues du gîte

Cependant, les mesures anti-sangsues fixées par gitee sont plus strictes :

Les photos en gîte subiront également un traitement anti-sangsue si elles ne portent pas le référent

Pour cela, j'ai fait une expérience contrôlée basée sur le refererterrain .

Demandez directement l'adresse de l'image via cURL , rien n'est retourné :

$ curl 'https://gitee.com/Topcvan/js-notes-img/raw/master/%E5%AE%8F%E4%BB%BB%E5%8A%A1%E9%98%9F%E5%88%97.png' \
  --compressed
复制代码

Demandez directement l'adresse de l'image via cURL, et portez le refererchamp , il y a du contenu et retournez correctement :

$ curl 'https://gitee.com/Topcvan/js-notes-img/raw/master/%E5%AE%8F%E4%BB%BB%E5%8A%A1%E9%98%9F%E5%88%97.png' \
  -H 'Referer: https://gitee.com/' \
  --compressed
Warning: Binary output can mess up your terminal. Use "--output -" to tell
Warning: curl to output it to your terminal anyway, or consider "--output
Warning: <FILE>" to save to a file.
复制代码

Capture d'écran ci-dessous :

Remplacez directement le src d'un img sur le site officiel par l'adresse personnelle de l'image du gîte, et ouvrez-le normalement :

évaluer

Il va de soi que l'anti-sangsue vise également à éviter le grand nombre de détournements d'images et d'autres ressources sur le site Web, ce qui entraîne des frais de serveur énormes. Mais gitee a une meilleure approche :

  1. Préavis d'un mois à l'avance, transition en douceur et ne causera pas une si grande répercussion
  2. La politique anti-leech est trop stricte et les images ne peuvent pas être ouvertes directement dans le navigateur

Même comme les pépites, ajoutez votre propre filigrane dans le coin inférieur droit !

Je suppose que tu aimes

Origine juejin.im/post/7079321533558030349
conseillé
Classement