一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

asp.net中利用ashx實現圖片防盜鏈代碼

GET /Img.ashx?img=svn_work.gif HTTP/1.1
Accept: */*
Referer: http://www.svnhost.cn/
Accept-Language: zh-cn
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA)
Host: www.svnhost.cn
Connection: Keep-Alive
該數據包表示請求http://www.svnhost.cn/Img.ashx?img=svn_work.gif文件。我們可以看到Referer表示請求頁面地址,也就是文件來源。Host表示當前請求的主機地址。
下面是一個盜鏈的數據包
GET /Img.ashx?img=svn_work.gif HTTP/1.1
Accept: */*
Referer: http://745.cc/
Accept-Language: zh-cn
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA)
Host: www.svnhost.cn
Connection: Keep-Alive
我們可以看到,上面兩個數據,表示對于同一個文件:http://www.corange.cn/Img.ashx?img=svn_work.gif的請求過程,這里的不同就是Referer,也就是都是請求同一個文件,但是請求的來源是不同的。因此我們可以在程序里判斷是否是來源于當前服務器,來判斷是否是盜鏈。明白原理以后,實現防盜鏈就非常簡單了。下面以圖片防盜鏈來實現一個演示。ASP.NET中添加一個img.ashx文件,然后后臺代碼如下:
復制代碼 代碼如下:
using System;
using System.Collections;
using System.Data;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
namespace GetImage
{
/// <summary>
/// $codebehindclassname$ 的摘要說明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Img : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpg";
if (context.Request.UrlReferrer != null && context.Request.UrlReferrer.Host.Equals(context.Request.Url.Host, StringComparison.InvariantCultureIgnoreCase))
context.Response.WriteFile(context.Server.MapPath("~/" + context.Request.QueryString["img"]));
else
context.Response.WriteFile(context.Server.MapPath("~/logo.gif"));
}
public bool IsReusable
{
get
{
return false;
}
}
}
}

表示如果來源不為空,并且來源的服務器和當前服務器一致,那就表示是正常訪問,非盜鏈。正常訪問文件內容。
否則就是盜鏈,返回網站LOGO。
你甚至可以做成隨機返回正確的圖片,隨機返回錯誤圖片,或者定時返回正確圖片,定時返回錯誤圖片。
然后就是圖片的使用了,這時使用圖片就不是直接<input type="image" src="svn_work.gif" />了,而是<input type="image" src="/Img.ashx?img=svn_work.gif" />,就是說通過img,ashx來讀取圖片。別人盜鏈的話要用下面代碼:<input type="image" src="http://www.corange.cn/Img.ashx?img=svn_work.gif" />。

AspNet技術asp.net中利用ashx實現圖片防盜鏈代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美日韩亚洲国产千人斩 | 国产精品精品国产 | 麻豆精品成人免费国产片 | 亚洲大片免费看 | 蜜桃嫩草| 精品分享 | 亚洲国产最新在线一区二区 | 高清国产一区 | 色狠狠色狠狠综合天天 | 国产婷婷色一区二区三区深爱网 | 综合久久久 | 一本大道加勒比久久综合 | 国产91播放 | 亚洲精品视频在线免费 | 在线观看一区二区三区视频 | 亚洲一区二区三区成人 | 国产91久久精品 | 亚洲美女aⅴ久久久91 | 激情欧美人xxxxx | 亚洲aaaa级特黄毛片 | 一级a性色生活片久久毛片 一级爱爱片一级毛片-一毛 | 色天天综合色天天碰 | 青青草国产免费国产是公开 | 色天天天综合色天天碰 | 日韩一区二区三区视频在线观看 | 久久99精品一级毛片 | 中文字幕第一页国产 | www.日本一区| 婷婷综合色| 亚洲国产一区二区在线 | 久久网国产 | 色老板最新网站视频地址 | 日本视频一区二区三区 | 91短视频在线观看2019 | 成年人免费看视频 | 黄色在线免费观看网址 | 91久久精品国产亚洲 | 黄色在线观看视频网站 | 午夜在线观看视频 | 欧美日韩亚洲国产无线码 | 国产精品夜色视频一区二区 |