Step 1: Create the CustomHandler. cs file. The Code is as follows:
Copy codeThe Code is as follows:
Using System;
Using System. Web;
Namespace CustomHandler {
Public class JpgHandler: IHttpHandler {
Public void ProcessRequest (HttpContext context ){
// Obtain the physical path of the file server
String FileName = context. Server. MapPath (context. Request. FilePath );
// If UrlReferrer is empty, a default anti-leeching image is displayed.
If (context. Request. UrlReferrer. Host = null ){
Context. Response. ContentType = "image/JPEG ";
Context. Response. WriteFile ("/error.jpg ");
} Else {
// If UrlReferrer does not contain the host domain name of your website, a default anti-leeching image is displayed.
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 compile this file
Copy codeThe Code is as follows:
Csc/t: library/r: System. Web. dll CustomHandler. cs
Step.3 copy the compiled mmhandler. dll to the Bin directory of the site.
Step 4 register the Handler in Web. Config.
Copy codeThe Code is as follows:
<System. web>
<HttpHandlers>
<Add path = "*. jpg" verb = "*" type = "CustomHandler. JpgHandler, CustomHandler"/>
</HttpHandlers>
</System. web>
OK. You can test it by step. I will not go into details here.