2011-05-11 39 views
0

我的应用程序显示出奇怪的行为。每当我按下页面上的提交按钮来保存它,就会自动重定向到/login.aspx。用户已登录并且代码不会重定向到login.aspx。我搜索了所有的解决方案文件,但我从来没有发现文本“login.aspx”,数据库也不包含“login.aspx”。我想知道系统如何重定向到这个页面。此页面在我的应用程序中不存在。 请注意,此问题仅在现场。 以下是错误:提交时自动重定向到login.aspx

Server Error in '/' Application. 

无法找到该资源。

说明:HTTP 404.您正在查找的资源(或其某个依赖项)可能已被删除,名称已更改或暂时不可用。请检查以下网址并确保它拼写正确。

请求的URL:/login.aspx

版本信息:Microsoft .NET Framework版本:2.0.50727.4211; ASP.NET版本:2.0.50727.4209

回答

2

错误是由于对文件夹的写入权限。

+0

什么文件夹?... – ekeith

1

听起来好像您在web.config中使用带有重定向URL的表单身份验证。检入身份验证节点下的web.config。

+0

否web.config不包含login.aspx。 Web.config具有。 – hotcoder

+0

这就是你的问题,你需要 turtlepick

+0

我还没有指定登录。aspx任何地方。这是我问的问题,为什么它会login.aspx – hotcoder

1
  1. 安装Nuget
  2. Elmah包添加到您的项目。 (拿起啤酒)
  3. 检查您的会话是否持续正确。
  4. 检查HttpContext.Current.User.Identity.IsAuthenticated是否为真。
  5. 检查您的Web.Config和IIS设置窗体身份验证。
  6. 重新注册ASP.Net与您的IIS安装(谷歌aspnet_regiis)。
  7. 指定默认的登录页面是这样的:

    <authentication mode="Forms"> 
        <forms loginUrl="~/Signin.aspx" defaultUrl="~/Dashboard.aspx" name=".ASPXFORMSAUTH"></forms> 
    </authentication> 
    

该窗体身份验证教程可能是有价值的:

http://www.dotnetfunda.com/articles/article141.aspx

+0

此问题仅在现场。它在本地主机上运行良好。 – hotcoder

+0

检查IIS设置,Web.Config设置以及可能重新向生产IIS注册ASP.Net(如果可能)的所有更多理由。请记住,您的本地调试服务器是Cassini,您的生产服务器可能是IIS7.0。 – Jeremy

1

检查现场服务器上的设置,它可能是强制超时作为全局设置。

另外,正如Jeremy Child指出的那样,将身份验证表单loginUrl设置为您进行身份验证的页面。

0

检查您的框架版本web.config在C:\ windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ Web.config(或您使用的任何版本.net)以确保有人没有添加它作为默认值。 记得3.5和3.0都使用2.0 web.config