Я пытался решить эту проблему уже пару дней, но безуспешно.Дело в том, что я переписал старый сайт веб-форм в mvc 3 и получил несколько устаревших URL-адресов, которые нужно перенаправить на новый URL-адрес: s
Так выглядят 2 маршрута в глобальном масштабе.asax, который должен перехватывать все запросы к старому URL: s
routes.MapRoute(
"legacyevents",
"events/{*slug}",
new { controller = "Redirect", action = "RedirectLegacyRoute" },
new[] { "Web.Controllers" }
);
routes.MapRoute(
"legacyarticles",
"articles/{*slug}",
new { controller = "Redirect", action = "RedirectLegacyRoute" },
new[] { "Web.Controllers" }
);
Странная вещь в том, что когда запрос выглядит так:
events/randomevent__12.aspx
все работает хорошо, но если E в событияхв верхнем регистре Events / randomevent__12.aspx asp.net где-то добавляет еще одно слово события в URL, чтобы оно выглядело так, когда оно попадает в RedirectController
events/events/randomevent__12.aspx
Из-за отсутствия знаний о SEO, когда я писал в Интернетеприложение форм несколько лет назад многие входящие ссылки на старые URL-адреса имеют смешанный регистр :( поэтому мне действительно нужно решить эту проблему
Маршрут, который должен обрабатывать статьи, работает так, как задумано, и не заботится о регистреURL входящего запроса, что делает этот случай таким странным, поскольку маршруты направлены на один и тот же RedirectController.
Любая помощь будет оцененаРед, и если вам нужна дополнительная информация, я с радостью предоставлю ее
С наилучшими пожеланиями
// K