gpt4 book ai didi

php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

那么如果考虑突破防盗链的措施,就需要考虑在 HTTP_REFERER 上面做手脚了。PHP 脚本中对应的变量是 $_SERVER['HTTP_REFERER'] ,它存储了 HTTP_REFERER 的值。  由于直接访问目标 URL 资源已经被上述防盗链的措施给屏蔽,所以我们需要个类似网关的玩意去获取。说白了就是编写已经包装过的 HTTP 头的 PHP 脚本。  下面是简单的函数实现:  。

复制代码代码如下

function getRemoteFile($url, $refer = '') {  $option = array(  'http' => array(  'header' => "Referer:$refer")  );  $context = stream_context_create($option);  return file_get_contents($url, false, $context);  }  。

  。

这是个比较简单的函数,其功能就是伪造 Referer (使用  复制代码代码如下

function getHost($url) {  $result = preg_match('/^http:\/\/([\d|\w|\.]+)\//', $url, $matches);  if (sizeof($matches) >= 2) {  return $matches[1];  } else {  return null;  }  }  。

再进一步的扩展,可以封装成脚本,然后譬如调用  http://127.0.0.1/proxy.php?url=http://i.am/img就可以获取那些开启防盗链措施的链接了(再发挥下,使用 Javascript 将图片链接全部替换).

最后此篇关于php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)的文章就讲到这里了,如果你想了解更多关于php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com