Я пытаюсь указать входящие запросы HTTP с .html
расширениями .aspx
страниц, и переписать URL-адрес в браузере, например, что ни .html
или .aspx
отображаются расширения.Зачистка .html расширения из запросов и перенаправляют запросы на .html страниц .aspx
Детали:
Когда пользователь запрашивает, скажем, localhost:123/lorem/ipsum.html
, я бы вернуть ~/Views/lorem/ipsum.aspx
страницу. URL должен выглядеть как localhost:123/lorem/ipsum
.
Одна половина из них обрабатывается пакетом AspNet.FriendlyUrls
. В моем RouteConfig.cs
файле, у меня есть набор правил, как это:
routes.MapPageRoute("Ipsum", "lorem/ipsum", "~/Views/lorem/ipsum.aspx");
Это гарантирует, что если пользователь отправляет запрос прочь к localhost:123/lorem/ipsum
, затем .aspx
загрузки страницы с правильной URL номенклатурой в браузере окно.
Я хочу найти способ распространить это на входящие запросы с .html
в конце. Я попытался добавить еще один RouteConfig.cs
правило для перенаправления пользователей от .html
до .aspx
страниц, в надежде, используя URL переписывает в веб-конфигурации для корректного отображения URL, но перейти на страницу в результате 404:
routes.MapPageRoute("Ipsum Html Redirect", "lorem/ipsum.html", "~/Views/lorem/ipsum.aspx");
Я очень смущен о трубопроводе маршрутизации. Используются ли правила перезаписи/переадресации Web.config в соответствии с правилами RouteConfig.cs
? Есть ли способ исправить мою проблему, добавив правило переписывания или перенаправления Web.config
, так что это работает с моими правилами RouteConfig.cs
?