溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ASP.NET 實(shí)現(xiàn)防盜鏈

發(fā)布時(shí)間:2020-06-11 07:33:11 來源:網(wǎng)絡(luò) 閱讀:318 作者:jyb2014 欄目:編程語言

using System;

using System.Web;

namespace CustomHandler{

public class JpgHandler : IHttpHandler{

public void Proce***equest(HttpContext context){


// 獲取文件服務(wù)器端物理路徑


string FileName = context.Server.MapPath(context.Request.FilePath);


// 如果UrlReferrer為空,則顯示一張默認(rèn)的禁止盜鏈的圖片


if (context.Request.UrlReferrer.Host == null){


context.Response.ContentType = "p_w_picpath/JPEG";


context.Response.WriteFile("/error.jpg");


}else{


// 如果 UrlReferrer中不包含自己站點(diǎn)主機(jī)域名,則顯示一張默認(rèn)的禁止盜鏈的圖片


if (context.Request.UrlReferrer.Host.IndexOf("yourdomain.com") > 0){


context.Response.ContentType = "p_w_picpath/JPEG";


context.Response.WriteFile(FileName);


}else{


context.Response.ContentType = "p_w_picpath/JPEG";


context.Response.WriteFile("/error.jpg");


}


}


}

public bool IsReusable{


get{ return true; }


}


}


}

<system.web>


<httpHandlers>


<add path="*.jpg,*.jpeg,*.gif,*.png,*.bmp" verb="*" type="CustomHandler.JpgHandler,CustomHandler" />


</httpHandlers>


</system.web>

//verb指的是請(qǐng)求此文件的方式,可以是post或get,用*代表所有訪問方式。CustomHandler.JpgHandler表示命名空間和類名,CustomHandler表示程序集名。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI