Сведения о вопросе

NOTtoday

11:57, 17th August, 2020

Теги

Какой Url рерайтер вы используете для ASP.Net?

Просмотров: 528   Ответов: 11

Я просмотрел несколько URL рерайтеров для ASP.Net и IIS и задался вопросом, что все остальные используют и почему.

Вот те, которые я использовал или посмотрел:

  • ThunderMain URLRewriter: использованный в предыдущем проекте, не совсем имел гибкость/производительность, которую мы искали
  • Ewal UrlMapper: используется в текущем проекте, но источник, похоже, заброшен
  • UrlRewritingNet.UrlRewrite: вроде бы неплохая библиотека, но документация плохая grammar заставляет меня чувствовать себя неловко
  • UrlRewriter.NET : это моя текущая версия, обладает большой гибкостью, хотя дополнительные функции, закачанные в заменяющие регулярные выражения, немного изменяют стандартный синтаксис .Net regex
  • Управляемый Fusion URL Rewriter : я нашел это в предыдущем вопросе о переполнении стека, но еще не пробовал его, судя по синтаксису примера, он не кажется редактируемым через web.config



  Сведения об ответе

LIZA

21:27, 23rd August, 2020

Есть System.Web.Routing, который только что был выпущен с .NET 3.5.

Вы можете просто использовать Request.RewritePath() в пользовательском HttpModule

Я предпочитаю использовать реализацию IHttpHandlerFactory и иметь полный контроль над всеми входящими URLs и тем, куда они сопоставляются.


  Сведения об ответе

PROGA

01:11, 3rd August, 2020

Если бы я начинал новый веб-проект сейчас, я бы смотрел на использование MVC с нуля. Это использует переписанный URLs как стандарт.


  Сведения об ответе

lesha

11:53, 29th August, 2020

IIS 7 имеет модуль перезаписи URL , который довольно способен и хорошо интегрируется с IIS.


  Сведения об ответе

lats

11:38, 18th August, 2020

+1 UrlRewritingNET.URLRewrite -- используется в нескольких сотнях services/portals/sites на одной коробке без выпуска в течение многих лет! (@Jason - это тот, о ком ты говоришь, верно?)

и я также использовал URLRewriter.NET на личном сайте, и нашел его, э-э, интересным. @travis, вы правы насчет измененного синтаксиса, но как только вы привыкнете к нему, это будет хорошо.


  Сведения об ответе

$DOLLAR

20:40, 25th August, 2020

Я бы не рекомендовал UrlRewritingNet, если вы находитесь в среде IIS7 Windows 2008.

Причина: UrlRewritingNet требует, чтобы вы использовали режим пула приложений = классический и NOT интегрированный. Это не оптимально Кроме того, их проект кажется очень мертвым, что последние 2 года.


  Сведения об ответе

DINO

04:47, 17th August, 2020

У меня был хороший опыт работы с фильтром ISAPI Rewrite от Ionic , который очень похож на ISAPI_Rewrite, за исключением free. Оба они моделируются после mod_rewrite и являются фильтрами ISAPI, поэтому вы не можете управлять ими в коде, поскольку вам нужно настроить их в IIS.


  Сведения об ответе

nYU

17:35, 28th August, 2020

Я уже использовал UrlRewriting.NET раньше на сайте с очень высоким трафиком-он отлично работал для нас. Я считаю, что разработчики-немцы, поэтому английская документация, вероятно, не так хороша, как могла бы быть. Я бы очень рекомендовал это сделать.


  Сведения об ответе

lesha

14:14, 18th August, 2020

Я только что установил программу Helicon's ISAPI Rewrite 3 . Работает точно так же, как htaccess. Я до сих пор в этом копаюсь.


  Сведения об ответе

$DOLLAR

12:35, 14th August, 2020

Я использовал .NET URL рерайтер и обратный прокси с большим успехом. Он почти на одном уровне с mod_rewrite и использует почти все те же синтаксические функции. владелец проекта чрезвычайно полезен и дружелюбен, и продукт отлично работает. Этот gem предоставляет как функции перезаписи, так и функции прокси, которые многие решения не предлагают. IMO, стоит посмотреть.


  Сведения об ответе

piter

03:22, 13th August, 2020

+1 для UrlRewritingNet.UrlRewrite тоже, но почему мне всегда нужно заканчивать свой URL на .аспх? Я думаю, что это должно быть улучшено лучше регулярного выражения partern.

Почему я всегда должен заканчивать aspx в virtualURL localhost/Products/Beverages.aspx", "localhost/Products/Condiments.aspx". Я просто хочу ввести localhost/Products/Beverages", "localhost/Products/Condiments", которые выглядят как MVC маршрут.

Этот выглядит хорошо, но он не работает для моего сайта. Я все еще не могу этого понять.


  Сведения об ответе

прога

16:29, 23rd August, 2020

asp.net маршрутизация служит требованию url перезаписи также и даже гораздо больше, чем. С помощью asp.net маршрутизации вы можете не только "rewrite the url", но и создавать пользовательские обработчики для различных запросов. Однако маршрутизация asp.net требует, по крайней мере asp.net с пакетом обновления 1.

Основное, что вы делаете для работы простой маршрутизации, - это добавляете несколько обработчиков маршрутов в Application_Start даже внутри файла Global.asax.cs.

 protected void Application_Start(object sender, EventArgs e)
        {

                        RegisterRoutes(RouteTable.Routes);


        }
        private static void RegisterRoutes(RouteCollection routes)
        {          

            routes.Add("Routing1", new Route("/Blog/id/2","/Blog.aspx"));

        }


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться