我有一个使用 ASP NET MVC 开发的应用程序,并且我在 IIS 中配置了一个虚拟目录。
我可以访问服务器文件夹以及位于 http:localhost:8081/application 的应用程序
我按预期重定向到位于 /Account/Login 的登录页面,但是当我使用我的用户名/密码登录时,我得到一个 Erro HTTP 404.0 - Not Found。
为什么会有这种行为?
编辑:
控制器:
//
// POST: /Account/Login
[HttpPost]
[ValidateAntiForgeryToken]
[AllowAnonymous]
public ActionResult Login(LoginModel model, string returnUrl)
{
MembershipProvider mp = Membership.Provider;
if (ModelState.IsValid && mp.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, false);
return RedirectToAction("Index", "Home");
}
// If we got this far, something failed, redisplay form
ModelState.AddModelError("", "Username ou Password incorreto!.");
return View(model);
}
路由配置:
namespace tgpwebged { public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional }
);
}
}
}