2013-01-01 12 views
5

Mam aplikację ASP.NET 4.5 MVC. Nie chcę ustawić RAMMFAR (runAllManagedModulesForAllRequests), ponieważ niepotrzebnie wysyłać żądania dla zasobów statycznych za pośrednictwem potoku ASP.NET; jednak chcę, aby wszystkie żądania rozpoczynające się od ścieżki /Download/ były uruchamiane za pośrednictwem potoku routingu ASP.NET, niezależnie od rozszerzenia. W ten sposób mogę skierować je do kontrolera i obsługiwać dynamicznie generowane zasoby.Skonfiguruj RAMMFAR tylko dla niektórych ścieżek.

Jak można tego dokonać? Nie mam dostępu do ustawień IIS, ale mam nadzieję, że jest sposób na zrobienie tego poprzez web.config.

Odpowiedz

1

Ustawienie RAMMFAR dotyczy jednej aplikacji. Jeśli chcesz, aby różne części witryny miały inne ustawienia, musisz utworzyć osobne aplikacje IIS, ale niestety, nie jest to opcja dla Ciebie.

ja dwa mają dwie nuty boczne choć:

  1. Czy jesteś pewien, że nawet trzeba RAMMFAR? Myślę, że przy korzystaniu z IIS 7.5 i nowszych jest bardzo rzadko potrzebny, ponieważ IIS i ASP.NET mogą poprawnie obsługiwać zarządzone/natywne żądania.
  2. Czy zidentyfikowałeś to jako rzeczywisty problem, aby zawsze był włączony? Niewątpliwie RAMMFAR spowalnia działanie, ale pytanie brzmi, czy powoduje to wymierny efekt w twojej aplikacji. Nawet jeśli statyczny plik przejdzie przez jakiś zarządzany kod, końcowe przetwarzanie pliku jest obsługiwane w natywnym kodzie. Jest więc trochę dodatkowej pracy, aby przejść "przez" potok zarządzany przez ASP.NET, ale gdy już to zrobimy, powraca do natywnego kodu IIS/Windows.
Powiązane problemy