Пренасочване на всички ASP.NET страници

Търся да пренапиша всички ASP.NET страници в еднаква структура. Нещо като:

  • /Content1/Page1.aspx -> /Page1

  • /Content1/Page2.aspx -> /Page2

  • /Content2/Page3.aspx -> /Page3 (обърнете внимание на различен поддиректор)

  • /xyz/Page4.aspx -> /Page4

Това възможно ли е?


Пренаписването на URL изглежда интересно... Ще отговаря ли и на моите правила за сигурност на web.config (т.е. адресният достъп само до /Content2/Page5.aspx трябва да остане в сила при сърфиране в /Page5).


person LoneRanger    schedule 23.07.2010    source източник
comment
Каква версия на IIS използвате?   -  person David Hoerster    schedule 23.07.2010
comment
Можете да наложите URLRewriting толкова строго или свободно, колкото искате, тъй като всичко се прави чрез регулярни изрази. Вижте моя редактиран отговор за друга опция (URLMappings)   -  person Chase Florell    schedule 23.07.2010
comment
По отношение на вашия въпрос за сигурност, да, тъй като пренаписвате приятелския URL (/Page5) към действителната страница (/Content2/Page5.aspx).   -  person David Hoerster    schedule 23.07.2010


Отговори (2)


Ако използвате IIS 7+, можете да използвате IIS URL Rewrite Module от Microsoft (връзка).

Ако използвате IIS 6, погледнете ISAPI Rewrite. Използвах го малко и изглеждаше, че работи доста добре.

person David Hoerster    schedule 23.07.2010

Разглеждали ли сте URLRewriting? Предполагам, че можете да го направите и с URLRouting, но ще оставя някой друг да отговори на този маршрут.

РЕДАКТИРАНЕ:

Друг вариант е, че ако знаете ТОЧНИЯ файлов път за всеки файл, можете да кодирате твърдо всеки път, като използвате URLMappings

person Chase Florell    schedule 23.07.2010