zoukankan      html  css  js  c++  java
  • Protecting your Images

    If you have a neat image or logo, and someone else decides to put it up on their site, they can simply view the HTML source code and put the fully qualified URL to the image in an IMG tag on their site. There, of course, is nothing illegal with leaching images, but it is annoying if you are the one whose server is being burdened by requests from another site. This article, written by Bart Silverstein, describes a technique to protect your image files.

    First, let's look at what your IMG tag will look like to display a "protected" image from our site (www.site1.com):

    <IMG SRC="/images/getimage.asp?FName=whatever.jpg">

    The filename of the image you want to display will be whatever.jpg. Now, let's look at the getimage.asp file.

    <% Option Explicit

    'Get where the request came from
    Dim strBuffer, FilePath
    strBuffer = Request.ServerVariables("HTTP_REFERER")
    strBuffer = mid(strBuffer, InStr(strBuffer,".") + 1)
    strBuffer = left(strBuffer, InStr(strBuffer, "/") - 1)

    'Specify the path we should be served from
    ' (This can be another web site (http://www.site2.com) or
    ' some directory where the web surfer will not expect to
    ' find your images...
    FilePath = "/HIDDENIMAGES/"

    'Test to see if we should serve the file or not
    If strBuffer = "site1.com" then
    'The Image can be served
    FilePath = FilePath + Request.QueryString("FName")
    Else
    'They are trying to leach our file!!
    FilePath = "/images/leacher.jpg"
    End If

    'Send them to the appropriate file
    Response.Redirect(FilePath)
    %>

    This file uses the Request.ServerVariables collection to get the HTTP_REFERRER and then, based on the value of that variable, it determins if the user can view the file or not. (For more information on the ServerVariables collection point your browser to the ServerVariables article)

    Of course this utility will not stop users from right clicking on an image and saving the file, but it will successfully stop anyone from leaching your image files.

    Happy Programming!

  • 相关阅读:
    JVM内存问题分析
    CAS
    普通内部类,匿名内部类和静态内部类
    文章简介
    conda更换下载源
    MySQL常见约束
    MySQL常见的数据类型
    DDL(数据定义语言)
    DML语言(数据操纵语言)
    进阶9:联合查询
  • 原文地址:https://www.cnblogs.com/QDuck/p/251826.html
Copyright © 2011-2022 走看看