快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

用ASP让用户访问指定页面

一个网站有许多页面,假如用户知道某个页面的链接,可以在浏览器中直接输入url访问它。但这在一个要求有安全性的站点上是不答应的。我们要求用户必须登录以后才能访问各级页面,有时也确实希望用户总是先看到站点的主页。这两种要求可以通过在asp的global.asa中对session对象编程来实现。

1.用户必须从主页开始浏览

假如仅希望用户每次上站都先访问站点主页,可以在session的session_onstart事件中加入response.redirect “url"来实现。例如在global.asa中有如下代码:

sub session―onstart

response.redirect ″netdoctor.yeah.net″

end sub

由于用户在访问站点时,一连接就会激发session的onstart事件,所以不管用户在浏览器中输入的是本站点上的何url,都会由于onstart事件中重定向命令的作用而转向指定页面。

2.必须是经过验证的用户才能浏览

对于有安全性要求的站点,假如是intranet用户,可以把验证与nt的用户验证结合起来,只要给指定目录设定ntfs用户权限,用户访问时就会自动弹出验证窗口。这种验证不需要使用asp编程实现。

实际情况是,我们不会把大量的internet用户加入域用户中,一般是用一个数据库来治理用户名和口令,由asp程序把从web页面上取得的用户名和口令到库中进行查找验证。假如一个用户知道站点的目录结构,有可能直接输入某个页面的url,从而避过登录验证界面。这样,登录安全形同虚设。

如前所述,用户与站点一连接,就会引发一个session―onstart事件,所以我们可以在这里强制它转向登录页面。global.asa中的代码如下:

sub session―onstart

response.redirect ″login.asp″

end sub


3.辨析说明

朋友们可以注重到,以上两段代码实际上是相同的。但是,对于2中的情况,虽然一访问就转向了登录页面,可是此时session的onstart事件已经结束,假如再输入指定的url,就可以避过安全检测了。

我现在的解决方式是在每个asp页面前加上下面一段代码,来实现上面的功能:

<%

if session(″userid″)=″″ then

response.redirect ″login.asp″

 end if

%>


其中,session变量是在用户通过登录后建立的一个在整个过程中都生效的变量,如在login.asp中,使用以下代码:

if checkpwdok() then

session(″userid″)=request(″userid″)

end if


不过这种办法对站点的每个页面都要如此处理。对asp页面这么办还可以,对html页面文件就无能为力了。所以,本文在此抛砖引玉,希望能有朋友提出更好的办法。
返回类别: 教程
上一教程: ASP学习:URLDECODE 方式补遗
下一教程: 计算文件下载时间

您可以阅读与"用ASP让用户访问指定页面"相关的教程:
· 用ASP实现WEB页面分用户权限的访问
· ASP中简易用户访问控制-1
· ASP中简易用户访问控制-2
· ASP中页面限权访问的几种方式
· 页面自动刷新,又不用让用户按回车键来提交数据
    微笑服务 优质保证 索取样品