假设我有一个网站www.example.com
,此网站仅供授权用户使用,因此我有一个名为Login.aspx
的登录页面,当用户请求一个名为
www.example.com/books/55
授权用户工作正常,但当未授权用户请求此页面时,用户将显示为
www.example.com/Login.aspx?ReturnUrl=%2fbooks%2f55
我想让这个网址更加友好,以便像用户输入的那样显示网址
www.example.com/books/55
并显示登录页面(facebook行为)或以其他方式使此网址更友好。
答案 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是动态的。