当前位置: 首页 > news >正文

网站引用图片但它域名被墙了或者它有防盗链,我们想引用但又不能显示,本文附详细的解决方案非常简单!

最好的办法就是直接读取图片文件,用到php中一个常用的函数file_get_contents(图片地址),意思是读取远程的一张图片,在输出就完事。非常简单~话不多说,直接上代码

<?php
header("Content-type: image/jpeg");//防止输出乱码
$img=$_GET['img'];//通过get方法获取图片地址
echo file_get_contents($img);//角色上场?>

使用方法:新建一个img.php文件,把代码贴进去。你的链接/img.php?img=图片链接

下面是我搭建好的,搭建可以直接使用: https://www.bsdy.net/img.php?url=

再说说更变态的方法,接一下我演示一个判断请求来源的防盗链!!

这里就要用到PHP 中强大的curl,他可以伪造头部来源IP,来源地址,甚至可以使用proxy,PHP爬虫必备。

我们来简单分析一下吧。

这是一个连接,点击A标签可以看到一张图片,

,但是我们直接打开这张图片是不行的,因为他判断了请求的链接。如果不是在那个链接打开的,就会返回404,

,再继续分析,我们看一下请求refer,

可以看到必须是refer这个地址才行。那么我们就只有欺骗他的服务器了。废话不多说,直接贴代码,这是我封装好的CURL

<?php  function Crack_img($url,$refer){  $ch = curl_init($url);  //设置图片urlcurl_setopt ($ch, CURLOPT_REFERER, $refer);  //伪造请求来源curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);  $data = curl_exec($ch);  curl_close($ch);  header("Content-type:image/jpeg");  //输出二进制流图片return $data;}$url = $_GET["url"];  $refer = $_GET['refer'];echo Crack_img($url,$refer);

使用方法:新建PHP文件,粘贴进去,命名.php?url=图片地址&refer=来源地址

这是我搭建好的,大家可以直接使用:https://www.bsdy.net/img.php?url=图片地址&refer=来源地址

http://www.lryc.cn/news/321261.html

相关文章:

  • Java八股文(RabbitMQ)
  • 科研学习|论文解读——一种用于短文本消息中的释义检测的深度网络模型(IPM, 2018)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Web)下篇
  • 3月19日做题
  • Java8中Stream流API最佳实践Lambda表达式使用示例
  • 构建Helm chart和chart使用管道与函数简介
  • 深入理解OnCalculate函数的运行机制
  • 快速从0-1完成聊天室开发——环信ChatroomUIKit功能详解
  • nginx实现多个域名和集群
  • C. Left and Right Houses
  • 缓存与内存:加速你的Python应用
  • Go语言之函数、方法、接口
  • 【Week Y2】使用自己的数据集训练YOLO-v5s
  • 蓝桥杯--基础(哈夫曼)
  • 【Redis内存数据库】NoSQL的特点和应用场景
  • JavaScript基础知识2
  • Linux之线程同步
  • 03 龙芯平台openstack部署搭建-keystone部署
  • 定义了服务器的端口号和Servlet的上下文路径
  • AI论文速读 | UniST:提示赋能通用模型用于城市时空预测
  • rabbitmq-spring-boot-start配置使用手册
  • 操作系统知识-操作系统作用+进程管理-嵌入式系统设计师备考笔记
  • Go语言中的锁与管道的运用
  • 前端 - 基础 表单标签 -- 表单元素( input - type属性) 文本框和密码框
  • 关于MySQL模糊搜索不区分大小写
  • 论文阅读——MoCo
  • ARM 寄存器学习:(一)arm多种模式下得寄存器
  • 【nfs报错】rpc mount export: RPC: Unable to receive; errno = No route to host
  • 备战蓝桥杯---牛客寒假训练营2VP
  • QCustomPlot-绘制X轴为日期的折线图