怎样禁止用户在地址栏里直接输入url来访问页面,只允许通过web程序打开?请说的详细点,我是大菜鸟
解决方案 »
- ds.AcceptChanges()这句话到底什么作用?
- 怎样进行数据库重复操作的效果最好?
- 求一正则写法,急!!!!!!!!
- 200分求--2------读取文件路径。。。。。
- vs2010和2008有没有大的区别
- javascript 中使用 onchange 事件的问题!
- 为什么我们的iis经常重启?
- 内部网服务器IIS可以做多个主机头吗?
- BC30560: “commentopus_index_ascx”在命名空间“_ASP”中不明确
- 为什么System.Web.UI.WebControls.TextBox 的TextChanged事件中代码好像没执行 ,代码如下:
- 关于后台动态改变CSS的问题??
- checkbox用程序怎么选中它?
当无权限的用户在地址栏里直接输入url来访问页面就导向到另外一个页面去
FormsAuthentication.SetAuthCookie(yhid,false);
string yhid = User.Identity.Name;
如果yhid为空就转到登陆界面
这个是最简单的方法,呵呵,安全性不高
if (Request.ServerVariables["HTTP_Referer"]==null)
{
comeurl=Request.Url.AbsoluteUri;
}else
{
comeurl=Request.ServerVariables["HTTP_Referer"].ToString();
}
www.cnblogs.com/pwqzc
里面有篇这样的文章
哪有你说的那个Request.ServerVariables["HTTP_Referer"]啊?
可以用url重写
在WEB首页的PageLoad{}加入:Session.Add("user","Bill");
在其他页面PageLoad{}加入判断:if(Session["user"==""]){Response.Redirect("首页的文件名")}
2,cookies
3,forms
4,other
原理就是页面Page_Load时判断一下,是不是有效用户。
你可以试试
用这个来判断
Request.UrlReferrer == null : 直接输入url来访问页面的情况
Request.UrlReferrer.Host :由其他页面转过来的情况,这时要看一看返回的是不是你的域名。
Dim ryid As String
If name.Text = "" Then Page.RegisterStartupScript("dgscript", "<script Language=""Javascript"">alert('请输入用户名!')</script>") ElseIf password.Text = "" Then Page.RegisterStartupScript("dgscript", "<script Language=""Javascript"">alert('请输入密码!')</script>") Else
If name.Text = "guest" And password.Text = "1" Then
Response.Redirect("main.aspx")
End If
Dim strcom As String = "select 职工ID,姓名,登录名,密码,角色ID,权限 from V_Ry_Js where 登录名='" _
& Trim(name.Text) & "' and 密码='" & Trim(password.Text) & "'"
Dim com As SqlClient.SqlCommand = New SqlClient.SqlCommand(strcom, Sqlcon)
com.Connection.Close()
com.Connection.Open()
Dim dr As SqlClient.SqlDataReader = com.ExecuteReader(CommandBehavior.CloseConnection)
If dr.Read() Then
Session("name") = dr.Item("登录名")
MDrm = Session("name") Session("xi") = dr.Item("姓名")
MName = Session("xi") Session("pass") = dr.Item("权限")
Mqx = Session("pass") ryid = dr.Item("职工ID") com.Connection.Close()
dr.Close()
'Dim html As String = "Weblogins.aspx?user=" & MName & "&Drm=" & MDrm & "&pass=" & Mqx & "&Ygid=" & ryid
'Page.RegisterStartupScript("lodepage", "<script Language=""Javascript"">window.open ('" & html & "', '', ' height=600, width=800, toolbar=no, menubar=yes, scrollbars=yes, resizable=yes,location=no, status=yes');window.opener=null;window.close(); </script>")
Response.Redirect("Weblogins.aspx?user=" & MName & "&Drm=" & MDrm & "&pass=" & Mqx & "&Ygid=" & ryid)
Else
Page.RegisterStartupScript("dgscript", "<script Language=""Javascript"">alert('用户不合法,请重新输入!')</script>")
End If
End If
'在此处放置初始化页的用户代码
If Not Page.IsPostBack Then
Dim MName As String = Me.Request.QueryString("user")
If MName <> "" Then
Me.Response.Write("<script Language=""Javascript"">alert('" & "欢迎" & MName & "进入核工业216大队主页!" & "')</script>")
ElseIf Session("name") = "" Then
Response.Redirect("default.aspx")//Session("name")空的话,返回界面
End If
End If
End Sub