就在前几日, 微博图床加入了防盗链, 只要你有referer引用就会返回403. 但是直接访问是可以的.
也是我就想, 我能不能用这个方法访问, 用 php 去访问然后再去返回呢. 只要把 img src 全部换掉不就行了吗.

建立微博图床镜像

于是, 首先写一个 php ,用它来获取图片,然后返回它。
1<?php
2
3if (!preg_match('/blog.yiny.ml/i',$_SERVER['HTTP_REFERER']) && !preg_match('/shizuri.net/i',$_SERVER['HTTP_REFERER']) && !preg_match('/yinys.tk/i',$_SERVER['HTTP_REFERER'])){
4	echo $_SERVER['HTTP_REFERER'];
5}
6else
7{
8$url = 'https://wx1.sinaimg.cn/' . $_GET['src'];
9
10$file_data = file_get_contents($url);
11
12header("Content-Type: image/jpeg;");
13
14
15echo $file_data;
16}
Copy
其中,第一个 if 用来判断是否是你的站点,用来防滥用。

更改图片引用连接

在每篇文章的 <footer> 标签中,引用如下代码
1<script>
2var img_arr = document.querySelectorAll('img[src]');
3
4for (var i = 0; i < img_arr.length; i++ )
5{
6    if(img_arr[i].src.indexOf('.sinaimg') !== -1)
7    {
8        img_arr[i].src = img_arr[i].src.replace(/[A-z]+[0-9].sinaimg.cn/g,'shizuri.net/get_img.php?src='); 
9    }
10}
11  console.clear() ;
12</script>
Copy

亲亲留个评论再走呗

正在加载评论区...