如何在PHP程序中防止盗链

example:

页面: dl.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;

//..............................

}

?>

Download Now...

时间: 2008-04-07

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

详解tomcat热部署和热加载的方法 我在项目开发过程中,经常要改动Java/JSP 文件,但是又不想从新启动服务器(服务器从新启动花时间),想直接获得(debug)结果.有两种方式热部署 和热加载: 1.热加载:在server.xml -> context 属性中 设置 reloadable="true"

我们首先提出这样一个简单的需求: 现在要分析某网站的访问日志信息,统计来自不同IP的用户访问的次数,从而通过Geo信息来获得来访用户所在国家地区分布状况.这里我拿我网站的日志记录行示例,如下所示: 121.205.198.92 - - [21/Feb/2014:00:00:07 +0800] "GET /archives/417.html HTTP/1.1" 200 11465 "http://shiyanjun.cn/archives/417.html/" &qu

详解Swift 利用Opration和OprationQueue来下载网络图片 1. 基于Opration封装的获取网络数据组件 import Foundation import UIKit public typealias OpreationClosure = ((_ data:Data? , _ error: Error?) -> Void) class LJOpreationManager: Operation { /** * 下载用的url */ public var imageUrl

详解python实现读取邮件数据并下载附件的实例 实现结果图: 实现代码: #!/usr/bin/python2.7 # _*_ coding: utf-8 _*_ """ @Author: MarkLiu """ import poplib import email from email.parser import Parser from email.header import decode_header from email.utils im

详解PHP防止直接访问.php 文件的实现方法 为了保证我们用 PHP 写的 API 的安全性要禁止除了接口外的访问方式. 比如我们的项目为 example, 其下有文件夹 dir1.有个接口文件 api.php. 结构为: 输入图片说明 这时候我们要求只能通过 example/api.php 来调用file.php里的服务,不能直接通过example/dir1/file.php来访问. 在 php 里有这样一个变量$_SERVER,这是个数组变量, 里面有各种键值对, 具体的可以搜索一下资料.

详解C#编程获取资源文件中图片的方法 本文主要介绍C#编程获取资源文件中图片的方法,涉及C#针对项目中资源文件操作的相关技巧,以供借鉴参考.具体内容如下: 例子: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; using System.Drawing; namespace CL { public class RES { /

1.settings.INSTALLED_APPS下添加:django.contrib.staticfiles 2.settings.py下添加:STATIC_URL = '/static/' 3. (1)在APP下新建文件夹static,然后在这个static文件夹下创建一个当前APP的名字的文件夹,再把静态文件放到这个文件夹下:(类似于Templates配置) 在模板中这样调用: {% load static %}

php防止文件盗链,如何在PHP程序中防止盗链相关推荐

  1. php 如何防止盗链,如何在PHP程序中防止盗链

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

  2. mye连接mysql数据库_MySQL_如何在Java程序中访问mysql数据库中的数据并进行简单的操作,在上篇文章给大家介绍了Myeclip - phpStudy...

    如何在Java程序中访问mysql数据库中的数据并进行简单的操作 在上篇文章给大家介绍了Myeclipse连接mysql数据库的方法,通过本文给大家介绍如何在Java程序中访问mysql数据库中的数据 ...

  3. EFR32--如何在EFR32程序中修改UUID

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/MemsanGZmInG/article ...

  4. 对文件或文件夹进行删除、移动、windows10重命名等操作时,系统可能提示“操作无法完成,因为其中的文件夹已在另一程序中打开,请关闭该文件或文件夹,然后重试

    我们在windows10中对文件或文件夹进行删除.移动.重命名等操作时,系统可能提示"操作无法完成,因为其中的文件夹已在另一程序中打开,请关闭该文件或文件夹,然后重试.",遇到这种 ...

  5. Doxygen 一个程序的文件产生工具,可将程序中的特定批注转换成为说明文件

    Doxygen是一种开源跨平台的,以类似JavaDoc风格描述的文档系统,完全支持C.C++.Java.Objective-C和IDL语言,部分支持PHP.C#.注释的语法与Qt-Doc.KDoc和J ...

  6. 无法删除文件夹的情况:文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开...

    在删除文件夹的时候,可能会遇到文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开,请关闭该文件夹或或文件,然后重试.这类无法关闭删除文件夹的情况,如下图所示. 如何解决 解决这 ...

  7. DevOps进阶(十)Jenkins组包时解决无法删除文件夹的情况:文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开...

    在删除文件夹的时候,可能会遇到文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开,请关闭该文件夹或或文件,然后重试.这类无法关闭删除文件夹的情况,如下图所示. 解决这个的关键是 ...

  8. 电脑删除文件遇到“操作无法完成,因为其中的文件夹或文件已在另一应用程序中打开”怎么办

    原文连接:http://www.xitongcheng.com/jiaocheng/dnrj_article_55055.html 电脑删除无用文件能增加内存使用空间,这不一位小伙伴说自己电脑删除某文 ...

  9. win12服务器文件设置只读,如何在Win10系统中更改文件夹的只读或系统属性

    正常情况下通过右键属性只能更改文件的只读属性,系统win10属性则连相应选项都没有.那么如何在Win10系统中更改文件夹的只读或系统属性呢?下面跟着学习啦小编来一起了解下吧. 在Win10系统中更改文 ...

最新文章

  1. 单链表-删除重复节点(递增链表)
  2. android 系统gpu 调试_[RK3288][Android6.0] 调试笔记 --- 读取当前DDR和GPU频率方法
  3. 01背包、完全背包、多重背包
  4. servlet中中文正常显示,mysql数据库手动插入中文正常显示,servlet向mysql中插入中文显示乱码...
  5. Shutter - 带有众多功能的屏幕截图工具
  6. Dubbo的SPI实现
  7. SkyEye图形化界面使用技巧篇(一)
  8. socket.io php 聊天室,WebSocket学习(一)——基于socket.io实现简单多人聊天室
  9. CAD图纸中图块无法打开编辑?
  10. matlab gui界面的优点,关于Matlab GUI界面设计的一些了解
  11. java学生健康体检档案管理系统ssm313hf
  12. ipadpro画流程图_Paper 推出适用于快速制作流程图的 Think 套件
  13. DREAMWERVER CS5序列号反复验证 解决方法
  14. L - New Year Snowmen
  15. Destroying assets is not permitted to avoid data loss.解决思路
  16. 什么时候,董明珠能成功卖给记者一部格力手机?
  17. CSP 201712-2 游戏
  18. 一种简单的生成伪随机数的方法
  19. Python---按字典序输出集合的所有非空子集
  20. 第四次产业革命源于人工智能(趋势解读20k字)

热门文章

  1. 我叫张东升,我是一名Android程序员,我有话要说
  2. wp7 手机应用安装
  3. Windows下装linux子系统
  4. 安卓bochs模拟linux_Bochs Linux安装
  5. Win10识别不了USB设备怎么解决?
  6. 蓝桥杯-蓝跳跳(矩阵快速幂 70%数据)
  7. DOTA数据集应用于Yolo-v4(-Tiny)系列1——切割图片与转换Annotation格式
  8. Financial Time Series Segmentation Based On Turning Points
  9. 概率统计·大数定律及中心极限定理【大数定律、中心极限定律】
  10. 思维导图详细安装过程