asp.net HttpHandler实现图片防盗链_javascript技巧

Step.1:创建文件 CustomHandler.cs,代码如下:

复制代码 代码如下:

using System;
using System.Web;

namespace CustomHandler{
public class JpgHandler : IHttpHandler{
public void ProcessRequest(HttpContext context){
// 获取文件服务器端物理路径
string FileName = context.Server.MapPath(context.Request.FilePath);
// 如果UrlReferrer为空,则显示一张默认的禁止盗链的图片
if (context.Request.UrlReferrer.Host == null){
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile("/error.jpg");
}else{
// 如果 UrlReferrer中不包含自己站点主机域名,则显示一张默认的禁止盗链的图片
if (context.Request.UrlReferrer.Host.IndexOf("yourdomain.com") > 0){
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile(FileName);
}else{
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile("/error.jpg");
}
}
}

public bool IsReusable{
get{ return true; }
}
}
}

Step.2 编译这个文件

复制代码 代码如下:

csc /t:library /r:System.Web.dll CustomHandler.cs

Step.3 将编译好的 CustomHandler.dll 拷贝到站点的 Bin 目录下。
Step.4 在Web.Config 中注册这个Handler。

复制代码 代码如下:

<system.web>
<httpHandlers>
<add path="*.jpg" verb="*" type="CustomHandler.JpgHandler, CustomHandler" />
</httpHandlers>
</system.web>

OK,诸位可以按步骤自行测试一下,这里就不赘述了。

时间: 2024-09-09 23:32:51

asp.net HttpHandler实现图片防盗链_javascript技巧的相关文章

asp图片防盗链的代码

  asp图片防盗链的代码 getimage.asp strBuffer = Request.ServerVariables("HTTP_REFERER") strBuffer = mid(strBuffer, InStr(strBuffer,".") + 1) strBuffer = left(strBuffer, InStr(strBuffer, "/") - 1) FilePath = "/HIDDENIMAGES/"

asp.net中利用ashx实现图片防盗链的原理分析_实用技巧

 直接分析盗链原理:看下面用httpwatch截获的http发送的数据 GET /Img.ashx?img=svn_work.gif HTTP/1.1 Accept: */* Referer: http://www.jb51.net/ Accept-Language: zh-cn UA-CPU: x86 Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NE

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

用Asp隐藏文件路径,实现防盗链

防盗链|防盗链 用Asp隐藏文件路径,实现防盗链 如果我们知道一个静态文件的实际路径如:http://www.xx.com/download/51windows.pdf,如果服务器没有作特别的限制设置,我们就可以毫不费力的把它下载下来!当网站提供51windows.pdf下载时,怎么样才能让下载者无法得到他的实际路径呢!本文就来介绍如何使用Asp来隐藏文件的实际下载路径. 我们在管理网站文件时,可以把扩展名一样的文件放在同一个目录下,起一个比较特别名字,例如放pdf文件目录为the_pdf_fi

百度空间图片防盗链破解程序 - PHP版

百度|程序|防盗链|破解 上传百度的图片无法从外部引用,让许多朋友伤透了脑筋,Verdana同学开发出了一个破解程序,可以用一段PHP代码来解决这个问题.本地清空IE 缓存后测试成功,由于没有主机,所以没有在 Internet 上面测试,有条件的朋友可以帮忙测试一下,谢谢!若有兴趣也在此程序基础上继续优化完善 以下是PHP源码./** * 百度空间相册图片防盗链破解程序 - PHP版 * * 使用方法: * * * * @author verdana * @version 1.0 * @sinc

简易方法实现网页图片防盗链设置

图片防盗和图片防盗链有什么区别呢?图片防盗: 是不想自己的图片被别人使用.图片防盗链: 是不想自己的图片被别人使用,且消耗的是自己的服务器流量.图片防盗是困难的,完美的图片防盗那几乎是不可能的.但还是有很多方法能够减少图片盗用. 今天我们使用空白图片覆盖真实图片,这个方法可以让别人无法获取真实的图片,除非查看源代码.你可以把真实的图片做为背景图片,而使用一张透明图片匹配尺寸并覆盖到真实图片上面. <div id="image1" style="background-im

Apache实现图片防盗链

Apache实现图片防盗链以及,显示一张"禁止盗链"的图片,我们可以用mod_rewrite 来实现. 假设充许连结图片的主机域名为:www.bianceng.cn 修改httpd.conf SetEnvIfNoCase Referer "^" local_ref=1 <FilesMatch ".(gif|jpg)"> Order Allow,Deny Allow from env=local_ref </FilesMatch&

php实现的网络相册图片防盗链完美破解方法

  本文实例讲述了php实现的网络相册图片防盗链完美破解方法.分享给大家供大家参考.具体如下: 网络相册图片防盗链破解程序 - PHP版 这个防盗链破解版可以完美破解当下比较流行的: 百度相册,网易相册,360我喜欢等网站图片. 还可以实现简单的图片防盗链. 因为这个类是先进行获取远程图片, 然后再把图片发送到客户端,所以,算是进行了两次流量的传送.因此,会浪费空间流量,接下来,会开发缓存功能,这样可以实现节约流量! ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1

用Asp隐藏文件路径,实现防盗链 的代码_应用技巧

用Asp隐藏文件路径,实现防盗链  如果我们知道一个静态文件的实际路径如:http://www.xx.com/download/51windows.pdf,如果服务器没有作特别的限制设置,我们就可以毫不费力的把它下载下来!当网站提供51windows.pdf下载时,怎么样才能让下载者无法得到他的实际路径呢!本文就来介绍如何使用Asp来隐藏文件的实际下载路径.  我们在管理网站文件时,可以把扩展名一样的文件放在同一个目录下,起一个比较特别名字,例如放pdf文件目录为the_pdf_file_s,把