如何在PHP程序中防止盗链

example:

页面: dl.php     
--------------------------------------------------------------------------------------     


代码如下:

<?php

$id = $_GET['id'];      
$act = $_GET['act'];

switch($act) {      
default :      
case "display" : displayHTML(); break;      
case "down" : down(); break;      
}

function displayHTML($id) {      
setcookie("visited", "true");

// print your HTML.      
}

function down($id) {      
if(! isset($_COOKIE['visited']) ) print "你盗联?";

$sql = "select path from TABLE where id=". $id;      
//..............................      
}      
?>

<a href="dl.php?id=1&act=down">Download Now...</a>

(0)

相关推荐

  • 详解PHP防止盗链防止迅雷下载的方法

    防止盗链: 原理:当服务器要我们下载文件的时候,我们会拿到一个链接,然后我们通过这个链接找到这个文件,然后将它下载下来.那么也就是说这个链接必须要有的,那么如何防止盗链呢?那就是给你的链接并不是真正的文件链接了.这一点很容易想到,那么不给你真正的链接又怎样让你下载文件呢? 我们在用php做网页的时候,总是会把php代码穿插在HTML代码中间,然后用php去生成剩下的代码,然后传给客户端,也就是说客户端会接受到我们php脚本运行的结果.也就是说:如果我的php脚本运行的结果就是你要下载的文件.这样

  • 如何在PHP程序中防止盗链

    example: 页面: dl.php      --------------------------------------------------------------------------------------      复制代码 代码如下: <?php $id = $_GET['id'];       $act = $_GET['act']; switch($act) {       default :       case "display" : displayH

  • 如何在Java程序中访问mysql数据库中的数据并进行简单的操作

    在上篇文章给大家介绍了Myeclipse连接mysql数据库的方法,通过本文给大家介绍如何在Java程序中访问mysql数据库中的数据并进行简单的操作,具体详情请看下文. 创建一个javaProject,并输入如下java代码: package link; import java.sql.*; /** * 使用JDBC连接数据库MySQL的过程 * DataBase:fuck, table:person: * 使用myeclipse对mysql数据库进行增删改查的基本操作. */ public

  • windows系统下,如何在C#程序中自动安装字体

    1.1.使用代码安装字体 注意:安装字体时,需要windows的管理员权限. [DllImport("kernel32.dll", SetLastError = true)] public static extern int WriteProfileString(string lpszSection, string lpszKeyName, string lpszString); [DllImport("gdi32")] public static extern i

  • C# 如何在WINForm程序中创建XML文件

    <?xml version="1.0" encoding="gb2312"?> <FilesInformation>   <version>1.0.1818.42821</version>   <description>说明</description>   <FileItem    FileName="name"   FileVersion="sdf"

  • 如何在MVC应用程序中使用Jquery

    前言:转眼间,已经是11月中旬了,也从今天开始我要继续在研究ASP.NET MVC的细节用法,所以将这些读书笔记和个人心得写成博客,让大家也能学习到东西,我阅读的书籍是:ASP.NET MVC高级编程,下面我就说说MVC中如何使用JavaScript和Jquery.还有我们现在经常使用的Ajax. 1.Ajax初步介绍 (1) 现在我们创建的Web应用程序几乎都要用到Ajax技术,从技术上面讲,Ajax代表异步JavaScript和XML(Asynchronous JavaScript and

  • 详解如何在C#/.NET Core中使用责任链模式

    最近我有一个朋友在研究经典的"Gang Of Four"设计模式.他经常来询问我在实际业务应用中使用了哪些设计模式.单例模式.工厂模式.中介者模式 - 都是我之前使用过,甚至写过相关文章的模式.但是有一种模式是我还没有写过文章,即责任链模式. 什么是责任链?# 责任链模式(之前我经常称之为命令链模式)是一种允许以使用分层方式"处理"对象的模式.在维基百科中的经典定义是 在面向对象设计中,责任链模式是一种由命令对象源及其一系列处理对象组成的设计模式.每个处理对象包含了

  • 如何在C#9 中使用顶级程序 (top-level)

    当我们用 C# 进行编码的时候,总需要写很多的模板代码,即使是最简单的 console 程序,想象一下,如果去测试一个 类库 或者 API 的功能,通常你会用 Console 程序去实现,在开始工作的时候会发现你受到了 C# 标准模板的限制,业务逻辑必须要写在 Main 里,如下代码所示:     class Program     {         static void Main(string[] args)         {             //todo         }  

  • Asp.Net Core 通过中间件防止图片盗链的实例

    一.原理 要实现防盗链,我们就必须先理解盗链的实现原理,提到防盗链的实现原理就不得不从HTTP协议说起,在HTTP协议中,有一个表头字段叫referer,采用URL的格式来表示从哪儿链接到当前的网页或文件.换句话说,通过referer,网站可以检测目标网页访问的来源网页,如果是资源文件,则可以跟踪到显示它的网页地址.有了referer跟踪来源就好办了,这时就可以通过技术手段来进行处理,一旦检测到来源不是本站即进行阻止或者返回指定的页面.如果想对自己的网站进行防盗链保护,则需要针对不同的情况进行区

  • .httacces文件的密码保护和防止盗链的实现方法

    1.密码保护的.htaccess文件 尽管有各种各样的.htaccess用法,但至今最流行的也可能是最有用的做法是将其用于网站目录可靠的密码保护.尽管JavaScrip等也能做到,但只有.htaccess具有完美的安全性(即访问者必须知晓密码才可以访问目录,并且绝无"后门"可走). 利用.htaccess将一个目录加上密码保护分两个步骤.第一步是在你的.htaccess文档里加上适当的几行代码,再将.htaccess文档放进你要保护的目录下: AuthName "Sectio

  • 详解php伪造Referer请求反盗链资源

    有些产品为了防止自己的产品被盗链访问,会采用反盗链措施,如封闭型生态的音乐网站和视频网站,他们已经为了版权付费,自然不希望你免费使用他们的资源.但因为很多人专门研究盗链,因此我们也需要了解下盗链.反盗链和逃避反盗链的原理. 盗链 引用百度百科对盗链的定义: 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率.受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何

随机推荐