出于学习的目的,用mvc3写了个小程序,但遇到一个奇怪的问题。
用到了mvc3中的用户登录功能,在本机上运行正常,但不知道为什么布到服务器上,权限这一块老是出错,该代码以前是可能正常运行的,后用重装过一次服务器,原系统是
win2003 32bit现换成了64bit。
代码:[Authorize(Roles="普通,室长,院长,管理")]
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
}
}在进行登录的时候,登录时不成功,只要一登录立刻又跳到了登录页面,好像以适当身份登录后,立刻就会失效,又强制让用户登录。
不知道为什么会出现这种情况。
比较确定是联数据库是没有问题的。
登录代码(其中MyUser是自己创建的User,其它是系统自动生成的代码):
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (MyUser.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName + "#" + model.Password, model.RememberMe);
if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
&& !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "Home");
}
}
else
{
ModelState.AddModelError("", "提供的用户名或密码不正确。");
}
} // 如果我们进行到这一步时某个地方出错,则重新显示表单
return View(model);
}
用到了mvc3中的用户登录功能,在本机上运行正常,但不知道为什么布到服务器上,权限这一块老是出错,该代码以前是可能正常运行的,后用重装过一次服务器,原系统是
win2003 32bit现换成了64bit。
代码:[Authorize(Roles="普通,室长,院长,管理")]
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
}
}在进行登录的时候,登录时不成功,只要一登录立刻又跳到了登录页面,好像以适当身份登录后,立刻就会失效,又强制让用户登录。
不知道为什么会出现这种情况。
比较确定是联数据库是没有问题的。
登录代码(其中MyUser是自己创建的User,其它是系统自动生成的代码):
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (MyUser.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName + "#" + model.Password, model.RememberMe);
if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
&& !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "Home");
}
}
else
{
ModelState.AddModelError("", "提供的用户名或密码不正确。");
}
} // 如果我们进行到这一步时某个地方出错,则重新显示表单
return View(model);
}
authentication节点怎么写的
问题是我在本机上可以,但在服务器上不行。
看看forms标记的path属性指定的路径对不对。
项目的目标平台是什么,
iis应用池高级设置,启用32位应用程序
项目的目标平台是什么,
iis应用池高级设置,启用32位应用程序
开发win xp 32-bit,visual studion 2010
服务器win2003 64-bit ,iis 6.0
项目的目标平台是什么,
iis应用池高级设置,启用32位应用程序
找了台win2003 32bit的机器还是一样的情况,不会跳转