首页 > 代码库 > .net使用httpHandler添加图片防盗链
.net使用httpHandler添加图片防盗链
.net使用httpHandler添加图片防盗链
1. 配置web.config:
<!--图片添加水印的配置--> <httpHandlers> <add verb="*" path="*.jpg" type="LinkHandler" /> </httpHandlers> <!--图片添加水印的配置结束-->
2. OutLinkHandler.cs:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Drawing;using System.IO;/// <summary>///HttpHandler 实现防盗链效果/// </summary>public class LinkHandler:IHttpHandler{ public LinkHandler() { } //1. 设置不能允许重用 public bool IsReusable { get { return false; } } //2. 编写最终处理程序 public void ProcessRequest(HttpContext context) { //context.Request.UrlReferrer.Host //主机名 //context.Request.Url.Port //端口号 <wbr> <wbr> <wbr> <wbr> <wbr> <wbr> <wbr> <wbr> //context.Request.UrlReferrer.Authority <wbr>//服务器端IP //根据Ip地址和端口号判断 if (context.Request.UrlReferrer.Authority == "192.168.123.184" && context.Request.UrlReferrer.Port == context.Request.Url.Port) { context.Response.ContentType="image/jpeg"; context.Response.WriteFile(context.Request.PhysicalPath); } else { context.Response.ContentType="image/jpeg"; context.Response.WriteFile(context.Request.PhysicalApplicationPath+"images/1/LinkError.jpg"); } }}
.net使用httpHandler添加图片防盗链
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。