1

In mvc 4 application i need to redirect users to main page, except login and signup page.

Whenever a request comes except login or register, i need to redirect user to homepage permenantly.

For example

www.example.com/home/contact

should redirect to www.example.com

Only these two address will be avaliable for user:

www.example.com/user/login
www.example.com/user/register

How can i handle this in shortest way. I dont want to change all controller methods.

Can
  • 659
  • 1
  • 7
  • 24
  • Do you understand sessions and cookies? Perhaps you only want to redirect to those urls when the user is not logged in. – Blake Yarbrough Jan 19 '16 at 16:16
  • Possible duplicate of [How can I make a redirect page using jQuery?](http://stackoverflow.com/questions/503093/how-can-i-make-a-redirect-page-using-jquery) – Blake Yarbrough Jan 19 '16 at 16:17

2 Answers2

2

You create redirect controller

public class RedirectController : Controller
{

    public ActionResult News()
    {
        return RedirectPermanent("/News");
    }
}

in your RouteConfig you make routes for your urls

       routes.MapRoute(
          name: "userlogin",
          url: "/user/login",
          defaults: new { controller = "User", action = "Login" }
       );

       routes.MapRoute(
          name: "UserRegister",
          url: "/user/register",
          defaults: new {  controller = "User", action = "register" }
        );

       MapRoute("Default", new {controller="Redirect", action="News"});

That way everything will redirect except for your 2 urls.

RoteS
  • 1,405
  • 13
  • 10
0

In javascript I recommend using this method.

window.location.replace(...)

Blake Yarbrough
  • 2,286
  • 1
  • 20
  • 36