CSDN博客

img shang515

控制图片不让匿名下载的方法

发表于2004/6/29 10:46:00  807人阅读

现有N多图片,且文件的命名是有规则,为了防止有人恶意批量下载,需要对图片进行控制,经过N次测试,最后终于搞定。方法如下:
一、建立图片文件映射
-------1、启动IIS,右击要设置的站点
-------2、选“虚拟目录”==》配置==》添加
-------3、在“可执行文件”里输入:C:/WINNT/Microsoft.NET/Framework/v1.1.4322/aspnet_isapi.dll
-------4、扩展名里输入:.gif    ==确定
-------5、如果添加多个,可以重复步骤3,4
二、设置Web.config文件里的身份验证为Forms验证,但是要允许匿名访问
 <authentication mode="Forms" />
<authorization>
        <allow users="*" />
</authorization>

三、在存图片文件的那个文件下面再新那一个Web.Config文件,内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <system.web>
      <authorization>
         <deny users="?"/>
      </authorization>
   </system.web>
</configuration>


但是这样会有一个问题,就是必须通过验证才可以看到图片,所以这样还是不行,现面就要再写一个Page基本,从System.Web.UI.Page继承,重写override protected void OnInit(EventArgs e)方法:
   if(!this.User.Identity.IsAuthenticated)
    FormsAuthentication.RedirectFromLoginPage("Guest",false);
四、修改WebForm的基本为该类
这样就相当于设置了一个“匿名”认证用户,图片就可以显示出来了

当然,这是一种笨方法,希望还会更好的方法
0 0

相关博文

我的热门文章

img
取 消
img