Я использую следующий код в моем Global.asax
файле для перезаписи URL:
routes.MapRoute(
"BlogArticle",
"Blog/Article/{filename}",
new { controller = "Blog", action = "Article" }
);
Это означает следующий URL:
/ Blog / Article /blog-article-title
Загрузит следующее действие:
/ Blog / Article? filename = blog-article-title
Я заметил, что исходный путь к URL все равно будет загружать мою страницу.
Это может вызвать проблемы, если перезапись URL была добавлена на сайт через несколько месяцев после того, как сайт начал работать.Google уже просканировал исходные URL-адреса, а теперь, когда он сканирует новые URL-адреса на сайте, он будет классифицировать это как дублирующийся контент .
Я представлял, что исходный URL-адрес теперь будет автоматическисделать перенаправление на переписанный URL, но это не так.
Я думаю, что имеет смысл встроить что-то подобное в ядро ASP.NET MVC, поскольку я не вижуПреимущество в том, что исходный URL все еще доступен, а не перенаправлен на перезаписанный URL.Есть ли какая-то причина, по которой это не было сделано?
Кроме того, как я могу предотвратить загрузку содержимого с исходного URL?Есть ли способ, которым я могу получить его на 301 постоянное перенаправление на переписанный URL?