防盗链下载控制

    技术2022-06-25  47

    禁止客户端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、在上一页面加隐藏域,访问者拷地址串,是拷不走隐藏参数的,在下载页检查隐藏参数

    <html>

         <body>

            <form>

                  <input id = "down" name = "down" type = "hidden" value = "down"/>

            </form>

         </body>

    </html>

    dowload页

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

    return;

     

    本文来自博客,转载请标明出处:http://blog.csdn.net/honkerhero/archive/2007/03/29/1544773.aspx


    最新回复(0)