Kha*_*tur 10 asp.net-mvc asp.net-mvc-routing
在我的网站上,我将一些图像从一个文件夹移动到另一个文件夹.
现在,当我收到旧图像'/ old_folder/images/*'的请求时,我想永久重定向到这些图像的新文件夹'/ new_folder/images/*'
例如:
/old_folder/images/image1.png => /new_folder/images/image1.png
/old_folder/images/image2.jpg => /new_folder/images/image2.jpg
Run Code Online (Sandbox Code Playgroud)
我添加了一个简单的重定向控制器
public class RedirectController : Controller
{
public ActionResult Index(string path)
{
return RedirectPermanent(path);
}
}
Run Code Online (Sandbox Code Playgroud)
现在我需要设置正确的路由,但我不知道如何将路径部分传递给path参数.
routes.MapRoute("ImagesFix", "/old_folder/images/{*pathInfo}", new { controller = "Redirect", action = "Index", path="/upload/images/????" });
Run Code Online (Sandbox Code Playgroud)
谢谢
Vol*_*hat 25
我会以下一个方式做
routes.MapRoute("ImagesFix", "/old_folder/images/{path}", new { controller = "Redirect", action = "Index" });
Run Code Online (Sandbox Code Playgroud)
在这样的控制器
public class RedirectController : Controller
{
public ActionResult Index(string path)
{
return RedirectPermanent("/upload/images/" + path);
}
}
Run Code Online (Sandbox Code Playgroud)
首先从此链接下载并安装RouteMagic包,然后将旧地址重定向到新地址如下代码:
var NewPath = routes.MapRoute("new", "new_folder/images/{controller}/{action}");
var OldPath = routes.MapRoute("new", "old_folder/images/{controller}/{action}");
routes.Redirect(OldPath ).To(NewPath );
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请查看以下链接 重定向路由以维护持久URL
| 归档时间: |
|
| 查看次数: |
25444 次 |
| 最近记录: |