Créez un site Web, téléchargez une image à un certain emplacement sur le serveur, puis accédez directement à l'image via un lien. Cela signifie que lorsque d'autres personnes obtiennent le lien, ils peuvent directement saisir le chemin absolu dans le navigateur pour le voir. . Comment peut-on l’éviter ?
L'affiche peut essayer le stockage cloud de Youpaiyun, qui dispose d'un Token anti-sangsue pour résoudre le problème que vous avez mentionné. Cet article est fourni pour vous aider à comprendre l'anti-sangsue de Token.
Article recommandé : Explication détaillée de Token anti-sangsue
Rénovez le serveur d'images afin que le dossier d'images ne soit pas directement exposé au monde extérieur. Configurez un service proxy HTTP sur le serveur d'images. L'URL pour accéder à l'image doit avoir un paramètre de jeton légal pour autoriser l'accès, tel que
.http://www.imgserver.com/test.jpg?t=xT5112XabseFg0
,Le paramètre t est généré par l'algorithme de cryptage que vous avez défini vous-même, et il contient l'heure de création de ce paramètre.
Une fois que le serveur a reçu cette demande, il déchiffre le jeton et obtient l'horodatage à l'intérieur. S'il a été créé dans les 10 secondes (vous pouvez définir la période de validité souhaitée), il renvoie les informations de l'image, sinon l'accès est refusé.
Un tel lien d'image a la notion de période de validité. Lorsque vous l'utilisez, vous pouvez charger l'image avec les paramètres légaux et l'afficher normalement à l'utilisateur. A ce moment, l'utilisateur copie l'adresse de l'image et y accède directement dans le navigateur. Il est probable que la période de validité soit expirée et ne puisse naturellement pas être ouverte.
De plus, il existe une méthode plus simple pour empêcher le hotlinking : (bien sûr, elle peut également être utilisée en combinaison avec la méthode ci-dessus)
1. Le moyen le plus stupide est de crypter le nom du fichier image, ce qui ne peut pas empêcher le vol du lien
.2 Utilisez base64 pour charger l'image
3. Accès en dehors du serveur de méthode de configuration du middleware
Recherchez la protection des liens hypertextes d'image, il y a trop de choses à dire à cet égard.
Ce type de demande est mieux résolu avec la technologie anti-hotlinking d'image.
Vous pouvez essayer la fonction de stockage d'objets de la plateforme cloud. Alibaba Cloud et Qiniu les ont tous deux. Les autorisations de téléchargement et de téléchargement sont séparées, ou il existe également des fonctions relativement traditionnelles telles que l'anti-sangsue.
Comprenez
thinkphp5
, pourquoi met-il le fichier d'entrée dans l'annuaire public ?Parce que cela peut garantir que les ressources de votre projet, telles que les images, ne sont pas directement accessibles par le navigateur et ne sont accessibles que via un fichier d'entrée unique index.php, de sorte que vos images ou certains fichiers de code ne soient pas directement accessibles. !
Vous pouvez suivre cette idée et définir les autorisations d'accès afin que les ressources d'images ne soient accessibles que via le fichier d'entrée
Les photos sont téléchargées pour que les gens puissent les voir. Je suppose que vous voulez la société antivol. Lorsque vous activez la connexion antivol, vous pouvez généralement vérifier le référent et choisir de désactiver le référent vide. Bien entendu, nous devons absolument nous prémunir contre le vol. Vous pouvez utiliser des méthodes telles que ne pas divulguer la véritable adresse ou ajouter un jeton.
Si le serveur http que vous utilisez est apache, alors créez un nouveau .htaccess dans le répertoire image et écrivez le code suivant :
Le principe est d'utiliser la fonction de réécriture d'Apache pour déterminer si le référent vient d'abc.com, et sinon, de passer à localhost.
Si l'image est accessible directement, il n'y a pas de référent. Si elle est référencée à partir d'autres sites Web, le référent est le nom de domaine de l'autre site Web. L'accès n'est pas autorisé, ce qui peut avoir pour effet de protéger l'image et d'économiser du trafic.
Je veux juste dire, pourquoi ne pas le mettre sur le serveur ! Mettez-le simplement en place et regardez ! C'est quoi l'anti-hotlinking, c'est assez bon pour empêcher les débutants !