防盗链下载控制

禁止客户端IE通过url地址下载文件?只能通过指定的下载页面下载文件

只有本网站转来的请求,可以下载,在地址栏直接输入地址不允许下载

1、不使用链接,使用回写流的方式,只有点击页面按钮才能激发下载

private void FileDownload(string DownPath)
    {
        String FullFileName = Server.MapPath(DownPath);
        FileInfo DownloadFile = new FileInfo(FullFileName);
        Response.Clear();
        Response.ClearHeaders();
        Response.Buffer = false;
        Response.ContentType = "application/octet-stream";
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(DownloadFile.FullName, System.Text.Encoding.UTF8));
        Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
        Response.WriteFile(DownloadFile.FullName);
        Response.Flush();
        Response.End();
    }
 

2、在上一页面加隐藏域,访问者拷地址串,是拷不走隐藏参数的,在下载页检查隐藏参数

    

       

             

       

    

 

dowload页

if (reuquest["down"] == null)

return;

你可能感兴趣的:(开发技术)