解决图片 防盗链

简介: js版解决方案var url = 'https://mmbiz.qpic.cn/mmbiz_jpg/TAoksPVlXMI7dQPxiaUbAHvyJ19iaG9b2Ueh53iaqTsn6F8O3m63zcBibgNpujM1HNeCKX99vOo...

js版解决方案

var url = 'https://mmbiz.qpic.cn/mmbiz_jpg/TAoksPVlXMI7dQPxiaUbAHvyJ19iaG9b2Ueh53iaqTsn6F8O3m63zcBibgNpujM1HNeCKX99vOov72LpHuqs92SMlg/640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1';
        var path = showImg(url);
        console.log(path);
        document.getElementById('img').innerHTML = path;


        function showImg(url) {
            var frameid = 'frameimg' + Math.random();
            window.img = '<img id="img" src=\'' + url + '?' + Math.random() + '\' /><script>window.onload = function() { parent.document.getElementById(\'' + frameid + '\').height = document.getElementById(\'img\').height+\'px\'; }<' + '/script>';
            return '<iframe id="' + frameid + '" src="javascript:parent.img;" frameBorder="0" scrolling="no" width="100%"></iframe>';
        }

后台提供代理

ngnix等都行
这里提供一个java版的代码,用再整理 临时记录

<%@page contentType="image/jpeg" import="java.io.OutputStream,java.io.InputStream,java.net.URL,java.net.URLConnection" language="java"%>
<%
    
    try{
        OutputStream os = response.getOutputStream();
        //获取图片路径url=http://www.sohu.com/images/aaa.jpg
        String picPath = request.getQueryString();
        //获取纯路径 http://www.sohu.com/images/aaa.jpg
        picPath = picPath.substring(4,picPath.length());
        //建立请求链接
        URLConnection u = new URL(picPath).openConnection();
        InputStream in = u.getInputStream();
        if (null != in) {
            int len;
            byte[] b = new byte[1024];
            while ((len = in.read(b)) != -1) { 
                os.write(b, 0, len); 
            }
            os.flush();
            in.close();
        }
        os.close();
        out.clear();
        //将图片内容重写到页面
        out = pageContext.pushBody();
    }catch(Exception e){
        e.printStackTrace();
    }
%>

 

然后在你所引用的别的网站页面的图片中

将<img src="http://comment.news.sohu.com/upload/as3rfsghgg/1.jpg"/>

换成:<img src="http://www.yourdomain.com/project/image.jsp?url=http://comment.news.sohu.com/upload/as3rfsghgg/1.jpg"/>

这样你就可以随意的将别的网站的图片放到自己公司的网站了。盗链成功了。

原理就是你创建的那个images.jsp文件将你url后的那个图片链接读取了然后重写到页面了。
相关文章
|
PHP 开发工具 对象存储
如何实现网站的防盗链?
本文就是介绍类似A这样的用户将资源存放在OSS上后,如何设置防盗链来避免这样情况的发生。 本文适用那些在网页中使用了OSS资源作为外链的用户。
20111 0
|
6月前
|
Docker 容器
80 # 图片防盗链
80 # 图片防盗链
16 0
|
11月前
|
编解码 开发工具 Android开发
.9图片的那点事儿
.9图片的那点事儿
146 0
|
弹性计算 负载均衡 网络协议
源站保护
源站保护
151 0
源站保护
|
Linux 数据安全/隐私保护 Windows
Stegosuite,图片隐写术
版权声明:转载请注明出处:http://blog.csdn.net/dajitui2024 https://blog.csdn.net/dajitui2024/article/details/79396511 ...
1347 0
|
存储 安全 对象存储
防盗链使用过程中遇到的问题
防盗链使用过程中遇到的问题
173 0
|
缓存 Android开发
图片
●图片加载,缓存,处理 Picasso (一个强大的图片下载与缓存的库) Fresco (一个用于管理图像和他们使用的内存的库) Glide (一个图片加载和缓存的库,使用的App有:网易新闻) Picasso-transformations (...
1342 0