Как заблокировать доступ к файлам при использовании System.Web.Routing.UrlRoutingModule? - PullRequest
1 голос
/ 22 января 2010

Я использую System.Web.Routing.UrlRoutingModule.

С этим я пишу:

routes.Add(new Route(@"cart/add", new RouteHandler("~/Order/CartAdd.ashx")));
routes.Add(new Route(@"cart/delete", new RouteHandler("~/Order/CartDelete.ashx")));
...

И у меня также есть один маршрут:

routes.Add(new Route(@"{*url}", new RouteHandler("~/Error/PageNotFound.ashx")));

Но если я сразу перейду к /Order/CartAdd.ashx, я никогда не войду в маршрут. Это идет непосредственно к тому обработчику. И если я иду в / Order / я получаю ошибку 403.14.

Как мне вместо этого перехватить эти URL с помощью маршрутизации?

1 Ответ

1 голос
/ 22 января 2010

В вашем коде регистрации маршрута вы можете написать что-то вроде этого ..

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.RouteExistingFiles = true;
        routes.IgnoreRoute("default.aspx");
        [...]

Который должен форсировать запросы файлов через ваши правила маршрутизации.

...