当前位置: 首页 > wzjs >正文

如何做增加网站留存的营销活动crm网站

如何做增加网站留存的营销活动,crm网站,市场调研报告范文,广告机免费投放图片盗链(Hotlinking)是指其他网站直接链接到你服务器上的图片资源,这会消耗你的带宽和服务器资源。以下是几种在ASP.NET中防止图片盗链的有效方法: 1. 使用URL重写模块(推荐) 在Web.config中配置URL重写规…

图片盗链(Hotlinking)是指其他网站直接链接到你服务器上的图片资源,这会消耗你的带宽和服务器资源。以下是几种在ASP.NET中防止图片盗链的有效方法:

1. 使用URL重写模块(推荐)
在Web.config中配置URL重写规则:

xml
<system.webServer>
    <rewrite>
        <rules>
            <rule name="Prevent Image Hotlinking">
                <match url=".*\.(gif|jpg|png|jpeg)$" />
                <conditions>
                    <add input="{HTTP_REFERER}" pattern="^$" negate="true" />
                    <add input="{HTTP_REFERER}" pattern="^https?://(www\.)?yourdomain\.com" negate="true" />
                </conditions>
                <action type="Rewrite" url="/images/blocked.png" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>
2. 使用HTTP处理程序(.ashx)
创建一个通用处理程序(ImageHandler.ashx):

csharp
public class ImageHandler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        string imagePath = context.Request.QueryString["img"];
        string referrer = context.Request.UrlReferrer?.Host ?? "";
        
        if (string.IsNullOrEmpty(referrer) || !referrer.Contains("yourdomain.com"))
        {
            context.Response.ContentType = "image/png";
            context.Response.WriteFile(context.Server.MapPath("~/images/blocked.png"));
            return;
        }
        
        string fullPath = context.Server.MapPath(imagePath);
        if (File.Exists(fullPath))
        {
            context.Response.ContentType = "image/" + Path.GetExtension(fullPath).Substring(1);
            context.Response.WriteFile(fullPath);
        }
    }
    
    public bool IsReusable => false;
}
3. 使用MVC控制器动作
csharp
public class ImageController : Controller
{
    public ActionResult GetImage(string imageName)
    {
        string referrer = Request.UrlReferrer?.Host ?? "";
        
        if (string.IsNullOrEmpty(referrer) || !referrer.Contains("yourdomain.com"))
        {
            return File(Server.MapPath("~/images/blocked.png"), "image/png");
        }
        
        string imagePath = $"~/images/{imageName}";
        string fullPath = Server.MapPath(imagePath);
        
        if (System.IO.File.Exists(fullPath))
        {
            string contentType = $"image/{Path.GetExtension(imageName).Substring(1)}";
            return File(fullPath, contentType);
        }
        
        return HttpNotFound();
    }
}
4. 使用.htaccess方法(适用于IIS)
如果你的网站托管在IIS上,可以在web.config中添加:

xml
<system.webServer>
    <httpProtocol>
        <customHeaders>
            <add name="Access-Control-Allow-Origin" value="https://www.yourdomain.com" />
        </customHeaders>
    </httpProtocol>
</system.webServer>
5. 使用C#中间件(ASP.NET Core)
对于ASP.NET Core应用,可以创建中间件:

csharp
public class AntiHotlinkingMiddleware
{
    private readonly RequestDelegate _next;
    
    public AntiHotlinkingMiddleware(RequestDelegate next)
    {
        _next = next;
    }
    
    public async Task Invoke(HttpContext context)
    {
        var path = context.Request.Path.Value;
        var isImage = path.EndsWith(".jpg") || path.EndsWith(".png") || path.EndsWith(".gif");
        
        if (isImage)
        {
            var referer = context.Request.Headers["Referer"].ToString();
            if (!string.IsNullOrEmpty(referer) && !referer.Contains("yourdomain.com"))
            {
                context.Response.ContentType = "image/png";
                await context.Response.SendFileAsync(Path.Combine("wwwroot", "images", "blocked.png"));
                return;
            }
        }
        
        await _next(context);
    }
}
然后在Startup.cs中注册:

csharp
app.UseMiddleware<AntiHotlinkingMiddleware>();
最佳实践建议
结合多种方法使用,提高防护效果

为合法引用设置白名单而不是黑名单

定期检查服务器日志,监控盗链情况

考虑使用CDN服务,许多CDN提供防盗链功能

对于敏感图片,考虑添加水印或使用低分辨率版本供外部引用

http://www.dtcms.com/wzjs/304240.html

相关文章:

  • 成品网站免费模板友链交换网站源码
  • 商务网站建设期末考试百度竞价外包
  • 网站建设制作浩森宇特公众号推广方案
  • 杭州十大软件公司seo关键词搜索优化
  • pc网站怎么建设流程最常用的网页制作软件
  • 小学网站源码php站长工具黄
  • 境外网址appseo实战密码电子版
  • 成都没有做网站的公司网站seo优化服务商
  • WordPress苏醒模板免费青岛设计优化公司
  • 深圳高端网站制作费用免费建站哪个比较好
  • 网站建设前期应该做哪些准备个人网站推广
  • 网页设计教程23杭州网站seo外包
  • 辅助网站怎么做江西百度推广公司
  • 龙华网站建设多少钱网络销售每天做什么
  • 闵行区网站建设百度一下子就知道了
  • 网站是如何建立的职业培训学校
  • 罗湖做网站报价刚刚地震最新消息今天
  • ERP开发 网站开发友情视频
  • 六安的网页制作今日头条搜索优化怎么做
  • 培训中心网站建设论文企业查询免费
  • 广州专业的做网站公司厦门网络推广公司
  • 怎么做单页网站重庆网页优化seo
  • 怎样做动漫照片下载网站站长之家ping
  • 网站建设哪家好 北京爱站网seo综合查询
  • 网站接任务来做网络营销策略的演变
  • 一个ip 做2个网站吗成都网站建设
  • 汤阴有没有做网站的公司百度移动端优化
  • 河北网站建设seo优化营销制作设计策划公司是做什么的
  • 松江网站建设培训费用江苏seo排名
  • 无二制造 网站升级建设中我想做电商