查看文章 |
防盗链代码
2007年05月13日 星期日 16:36
using System; using System.Net; using System.Net.Sockets; namespace GetNum { public class checkurl { public checkurl() { } public static bool GetUrlStatus() { try { System.Web.HttpContext page=System.Web.HttpContext.Current; string link = page.Request.UrlReferrer.ToString(); //获取用户前一个访问的url link = link.Substring(7); //去掉url前的“http://” int n = link.IndexOf("/"); link = link.Substring(0, n); //将用户前一个访问的url转化为"xxx.xxx.xxx"形式 IPHostEntry hostEntry = Dns.Resolve(link); IPEndPoint ipEndPoint = new IPEndPoint( hostEntry.AddressList[0],0); string ipAddress = ipEndPoint.Address.ToString(); //将前一个访问的url转换为ip地址 if (ipAddress == page.Request.ServerVariables.Get("Local_Addr").ToString()) //获取服务器ip,与用户前个访问的ip对比,相同则不是盗链 { return true; } else { return false; //盗链 } } catch { return false; //盗链 } } } } |
最近读者: