我有一个 MVC5 应用程序,发布在远程服务器上,它有 HomeController 和 About ActionResult 方法,我的 RouteConfig.cs 配置如下:
routes.MapRoute("Default",
"{controller}/{action}",
new { controller = "Home", action = "Login"});
但是,当我导航到作为 192.xxx.1.xx/MyApp 的发布 URL 时,登录表单按预期打开,但是在输入用户名和密码并提交表单后,提交重定向到 HomeController 中的 Post Method Login ,如下所示代码:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Login(SSERPService.UserName userName)
{
return RedirectToAction("About");
}
URL 更改为 192.xxx.1.xx/MyApp/Home/About,但页面显示“Nothing found”(控制器方法“About”似乎没有被命中),当输入 URL 到 About从浏览器 URL 选项卡中手动将页面设置为“192.xxx.1.xx/MyApp/Home/About”,其中页面显示“未找到”,但是,当将 RouteConfig 更改为“默认”时,如下代码:
routes.MapRoute("Default",
"{controller}/{action}",
new { controller = "Home", action = "About"});
然后导航到 192.xxx.1.xx/MyApp,然后显示“关于”页面,浏览器中的 URL 保持为 192.xxx.1.xx/MyApp,
如何让浏览器 URL 选项卡中手动输入的 URL 和 RedirectToAction 显示预期的页面“关于”?
注意:本地机器上发布的版本不会导致这个问题,只有远程服务器上的托管版本
请指教,
提前致谢,