asp.net 程序,用户登录时,无法跳转到相应的页面

时间:2022-09-24 08:51:19
网站首页用其他页面都可正常打开,但如果有用户进行登录时,就会自动跳转到 "default.aspx"页面上,然我在程序里写的是跳转到其他页面,搞了很久都不知道是什么原因搞的,而网站的后台,也是要输入用户名与密码的,可以正常登录. 
出现在的错误提示就是: 找不到相关的资源!因为,我在那个目录下,根本没有 default.aspx 
晕....希望那位知道是什么原因,给我说清一点,急用啊!

22 个解决方案

#1


跳错地方了!

#2


断点跟踪下.
而且.你看报错的时候的url是否正确.看下请求的页面是否在url的目录下!

#3


大致情况我在说下
如我的首页 default.aspx ,这里面有个地方,输入:用户名与密码 ,如果输入对的话: 到用户的管理页面: 
personadmin/personmanage.aspx 转到这个文件.现在的问题是:如果我输入对的话,会自动跳转到 personadmin/default.aspx 这个文件,我的personadmin目录下,根本没建这个文件,所以报找不到资源文件. 我的源文件是没有错的,也是要跳转到 personmanage.aspx 这个页面.不知为什么?
然而,我网站后台,如 admin/login.aspx 如果输入对的话,就可以跳转到相应的文件上,如 adminmanage.aspx
哪位大哥,碰到过类似的问题,给我说个原因啊,我现在都不知是什么原因.
对了,还报了个这样的错误 server error in '/' application 

#4



 路径问题?

#5


看看是不是下面的问题

你跳转的时候,应该如下代码
Response.Redirect("~/personadmin/personmanage.aspx");
如果你不小心写成了
Response.Redirect("~/personadmin");
这样的路径,它会去personadmin目录找默认的文件default.aspx 

如果还没解决,看看你Default.aspx的代码

#6


看来大家还没有明白我的意思,可以说根本不是代码的问题,我都检查了! 

#7


楼主,我真建议你断点调试一下,自己找找错误,你在这问问到什么时候?
我一般有问题都是断点调试查找出来的错误原因。

#8


有些错误就是你的误操作莫名其妙的出来的错误,这种错误别人可能是没法帮你解决的,只能说是提供一个思路。

#9


web.config里有出错跳转的一段代码,没问题吗?

#10


你只要在web.config 中加入 <pages enableEventValidation="true"/> 
或者在page中假如<%@ Page EnableEventValidation="true" %> 也可以.主要是.net 安全机制问题.只要你提交内容有脚本代码.默认都会包错.

看看这样能不能帮你解决问题

#11


直接用
Response.Redirect(要跳到的页面);

#12


断点肯定没问题的。。

#13


可以明确的告诉你
肯定是代码的问题
你检查的还不够仔细而已

十有八九的rpwt实际上都是自己的问题

#14


VS工具有设置断点调试的功能

去调试下一切都会OK


#15


在调试状态下,按F10就会跟踪到哪儿错了

#16


你跳转的代码怎么写的?
如果登录后挑砖代码写为FormsAuthentication.RedirectFromLoginUrl(用户名,false);
则登录后默认就会跳转到default.aspx文件,或者跳转到登录前想要访问的禁止匿名访问的页面。

解决方法:
1)直接添加个default.aspx页,如果不想添加该页面,可以采用方法2)
2)修改Web.Config文件
    <authentication mode="Forms">
      <forms loginUrl="login.aspx" defaultUrl="登录后要访问页面的URL地址" name="auth01" />
    </authentication>

#17


1.
web.config

    <authentication mode="Forms">
      <forms loginUrl="login.aspx" defaultUrl="登录后要访问页面的URL地址" name="auth01" />
    </authentication> 

2.
FormAuth 假如 returnUrl 是空,那么默认定向登录也所在目录的 default.aspx 的

3.
在你验证登录成功之后的代码 (应该在这里打断点,然后跟踪到底接下来执行到哪里去了)

显示的 Response.Redirect("~/personadmin/personmanage.aspx");

#18


》》》

3.
在你验证登录成功之后的代码 (应该在这里打断点,然后跟踪到底接下来执行到哪里去了)

if(Request.QueryString["returnurl"] == null || Request.QueryString["returnurl"].Length == 0)
{  Response.Redirect("~/personadmin/personmanage.aspx"); }
else {
Response.Redirect(Request.QueryString["returnurl"]); }
}

#19


personadmin 是否也是虚拟目录

#20


感谢大家的回答,在此说明几点:
本地测试正常,传到服务器上的问题,是不是iis设置,或者是服务设置的问题啊?

#21


由于我的语言能力不是很好,我把地址贴出来大家试下,就知道我说的是什么问题啦! 
http://www.cuxiao.gd.cn 
用户名: myname 
密码 : myname 
类型: 个人会员
然后,点击登录,你就能看到我说的问题啦,多谢!希望大家说下同什么原因引起的,我没碰到过类似的问题,在网上找了半天,也没有相关的说明.

#22


如果其它网页可以正常浏览,应该不是服务器的问题!
我之前有过类似的问题,和你一样,也觉得是服务器的问题,不过结果是,程序问题,在修改页面的时候,VS自动加进了已经存在的CSS样式(至于为什么自动加进,尚无答案),而且是绝对路径,就这一问题,导致所有应用母版页都打不开。

建议,你将代码放在别的机子上,测试一下,看运行是否正常?

#1


跳错地方了!

#2


断点跟踪下.
而且.你看报错的时候的url是否正确.看下请求的页面是否在url的目录下!

#3


大致情况我在说下
如我的首页 default.aspx ,这里面有个地方,输入:用户名与密码 ,如果输入对的话: 到用户的管理页面: 
personadmin/personmanage.aspx 转到这个文件.现在的问题是:如果我输入对的话,会自动跳转到 personadmin/default.aspx 这个文件,我的personadmin目录下,根本没建这个文件,所以报找不到资源文件. 我的源文件是没有错的,也是要跳转到 personmanage.aspx 这个页面.不知为什么?
然而,我网站后台,如 admin/login.aspx 如果输入对的话,就可以跳转到相应的文件上,如 adminmanage.aspx
哪位大哥,碰到过类似的问题,给我说个原因啊,我现在都不知是什么原因.
对了,还报了个这样的错误 server error in '/' application 

#4



 路径问题?

#5


看看是不是下面的问题

你跳转的时候,应该如下代码
Response.Redirect("~/personadmin/personmanage.aspx");
如果你不小心写成了
Response.Redirect("~/personadmin");
这样的路径,它会去personadmin目录找默认的文件default.aspx 

如果还没解决,看看你Default.aspx的代码

#6


看来大家还没有明白我的意思,可以说根本不是代码的问题,我都检查了! 

#7


楼主,我真建议你断点调试一下,自己找找错误,你在这问问到什么时候?
我一般有问题都是断点调试查找出来的错误原因。

#8


有些错误就是你的误操作莫名其妙的出来的错误,这种错误别人可能是没法帮你解决的,只能说是提供一个思路。

#9


web.config里有出错跳转的一段代码,没问题吗?

#10


你只要在web.config 中加入 <pages enableEventValidation="true"/> 
或者在page中假如<%@ Page EnableEventValidation="true" %> 也可以.主要是.net 安全机制问题.只要你提交内容有脚本代码.默认都会包错.

看看这样能不能帮你解决问题

#11


直接用
Response.Redirect(要跳到的页面);

#12


断点肯定没问题的。。

#13


可以明确的告诉你
肯定是代码的问题
你检查的还不够仔细而已

十有八九的rpwt实际上都是自己的问题

#14


VS工具有设置断点调试的功能

去调试下一切都会OK


#15


在调试状态下,按F10就会跟踪到哪儿错了

#16


你跳转的代码怎么写的?
如果登录后挑砖代码写为FormsAuthentication.RedirectFromLoginUrl(用户名,false);
则登录后默认就会跳转到default.aspx文件,或者跳转到登录前想要访问的禁止匿名访问的页面。

解决方法:
1)直接添加个default.aspx页,如果不想添加该页面,可以采用方法2)
2)修改Web.Config文件
    <authentication mode="Forms">
      <forms loginUrl="login.aspx" defaultUrl="登录后要访问页面的URL地址" name="auth01" />
    </authentication>

#17


1.
web.config

    <authentication mode="Forms">
      <forms loginUrl="login.aspx" defaultUrl="登录后要访问页面的URL地址" name="auth01" />
    </authentication> 

2.
FormAuth 假如 returnUrl 是空,那么默认定向登录也所在目录的 default.aspx 的

3.
在你验证登录成功之后的代码 (应该在这里打断点,然后跟踪到底接下来执行到哪里去了)

显示的 Response.Redirect("~/personadmin/personmanage.aspx");

#18


》》》

3.
在你验证登录成功之后的代码 (应该在这里打断点,然后跟踪到底接下来执行到哪里去了)

if(Request.QueryString["returnurl"] == null || Request.QueryString["returnurl"].Length == 0)
{  Response.Redirect("~/personadmin/personmanage.aspx"); }
else {
Response.Redirect(Request.QueryString["returnurl"]); }
}

#19


personadmin 是否也是虚拟目录

#20


感谢大家的回答,在此说明几点:
本地测试正常,传到服务器上的问题,是不是iis设置,或者是服务设置的问题啊?

#21


由于我的语言能力不是很好,我把地址贴出来大家试下,就知道我说的是什么问题啦! 
http://www.cuxiao.gd.cn 
用户名: myname 
密码 : myname 
类型: 个人会员
然后,点击登录,你就能看到我说的问题啦,多谢!希望大家说下同什么原因引起的,我没碰到过类似的问题,在网上找了半天,也没有相关的说明.

#22


如果其它网页可以正常浏览,应该不是服务器的问题!
我之前有过类似的问题,和你一样,也觉得是服务器的问题,不过结果是,程序问题,在修改页面的时候,VS自动加进了已经存在的CSS样式(至于为什么自动加进,尚无答案),而且是绝对路径,就这一问题,导致所有应用母版页都打不开。

建议,你将代码放在别的机子上,测试一下,看运行是否正常?