ASP.Net未授权用户URL和URLRewrite

时间:2014-09-09 09:27:11

标签: c# asp.net iis-7 url-rewriting webforms

假设我有一个网站www.example.com,此网站仅供授权用户使用,因此我有一个名为Login.aspx的登录页面,当用户请求一个名为

的页面时
www.example.com/books/55

授权用户工作正常,但当未授权用户请求此页面时,用户将显示为

www.example.com/Login.aspx?ReturnUrl=%2fbooks%2f55

我想让这个网址更加友好,以便像用户输入的那样显示网址

www.example.com/books/55

并显示登录页面(facebook行为)或以其他方式使此网址更友好。

1 个答案:

答案 0 :(得分:1)

是的,可以完成网址重写。 在Application_Start下的全局文件中,

 RouteTable.Routes.MapPageRoute("AdminLoginRoute", "Admin/Login", "~/Admin/AdminLogin.aspx");

例如,您有一个名为Admin / AdminLogin.aspx

的页面

以上代码将使用Admin / Login

替换名称

代码中的图书/ 55似乎是动态的。 您可以通过传递动态参数来获取动态URL,如:

 RouteTable.Routes.MapPageRoute("AdminLoginRoute", "Admin/Login/{Id}", "~/Admin/AdminLogin.aspx");

这里Id是动态的。