Element httpHandlers (schéma nastavení ASP.NET)
Mapuje příchozí požadavky příslušné obslužné rutiny podle adresy URL a HTTP operace, které jsou zadané v žádosti. Tento element lze deklarovat na libovolné úrovni v hierarchii konfigurace.
<httpHandlers>
<add... />
<remove... />
<clear/>
</httpHandlers>
Atributy a prvky
Následující části popisují atributy, podřízené prvky a rodičovské prvky.
v případě vícehodnotových atributů
Žádný
Podřízené prvky
Podznačky |
Popis |
---|---|
add |
Volitelný prvek. Určuje mapování operace/cesty na obslužnou rutinu. |
clear |
Volitelný element. Odebere všechna mapování obslužných rutin, která jsou aktuálně nakonfigurována nebo zděděna. |
remove |
Volitelný element. Odebere mapování operace/cesty na obslužnou rutinu. Direktiva remove se musí přesně shodovat s kombinací operace/cesta předchozí direktivy add. Zástupné znaky nejsou podporovány. |
Nadřazené prvky
Prvek |
Popis |
---|---|
configuration |
Určuje požadovaný kořenový element nacházející se v každém konfiguračním souboru, který je používán modulem CLR (Common Language Runtime) a aplikacemi rozhraní .NET Framework. |
system.web |
Určuje kořenový element oddílu konfigurace technologie ASP.NET. |
Poznámky
Nastavení <httpHandlers> jsou zděděna podadresáři aplikace.
Direktivy <add> jsou zpracovávány v postupném pořadí seshora dolů. Pokud dva nebo více elementů <add> určují tutéž kombinaci akce/cesta, přepíše poslední <add> všechny ostatní.
Poznámka |
---|
Internetová informační služba (služba IIS) má svůj vlastní model pro mapování přípon na rozhraní ISAPI.Aby bylo mapování mezi danou příponou aplikace a její obslužnou rutinou funkční, musí být přípona mapována ve službě IIS na rozhraní ISAPI technologie ASP.NET.Pro nestandardní přípony, například pro vlastní příponu, musíte službu IIS odpovídajícím způsobem nakonfigurovat. |
Výchozí konfigurace
Následující výchozí element httpHandlers je konfigurován v souboru Machine.config v rozhraních .NET Framework verze 2.0.
<httpHandlers />
Následující výchozí element httpHandlers je konfigurován v souboru Machine.config v rozhraních .NET Framework verze 1.1.
Poznámka |
---|
System.Web.HttpForbiddenHandler je vnitřní typ, který vydává chybu HTTP 403 "Zakázáno: Přístup byl odepřen", pokud je proveden pokus o přístup k zakázanému prostředek. System.Web.StaticFileHandler je jiný vnitřní typ, který zpracovává přístup k zadaným souborům.V případě problémů s přístupem generuje jednu z následujících chyb: Chyba protokolu HTTP 401 "Neautorizováno"; Chyba protokolu HTTP 403 "Zakázáno: Přístup byl odepřen", nebo Chyba protokolu HTTP 404 "Soubor nebo adresář nebyl nalezen". |
<httpHandlers>
<add verb="*" path="*.vjsproj" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.java" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.jsl" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="trace.axd" type="System.Web.Handlers.TraceHandler"/>
<add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory"/>
<add verb="*" path="*.ashx" type="System.Web.UI.SimpleHandlerFactory"/>
<add verb="*" path="*.asmx" type="System.Web.Services.Protocols.WebServiceHandlerFactory,
System.Web.Services, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
validate="false"/>
<add verb="*" path="*.rem" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,
System.Runtime.Remoting, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
validate="false"/>
<add verb="*" path="*.soap" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,
System.Runtime.Remoting, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
validate="false"/>
<add verb="*" path="*.asax" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.ascx" type="System.Web.HttpForbiddenHandler"/>
<add verb="GET,HEAD" path="*.dll.config" type="System.Web.StaticFileHandler"/>
<add verb="GET,HEAD" path="*.exe.config" type="System.Web.StaticFileHandler"/>
<add verb="*" path="*.config" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.cs" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.csproj" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.vb" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.vbproj" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.webinfo" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.asp" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.licx" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.resx" type="System.Web.HttpForbiddenHandler"/>
<add verb="*" path="*.resources" type="System.Web.HttpForbiddenHandler"/>
<add verb="GET,HEAD" path="*" type="System.Web.StaticFileHandler"/>
<add verb="*" path="*" type="System.Web.HttpMethodNotAllowedHandler"/>
</httpHandlers>
Následující výchozí element httpHandlers je v rozhraní .NET Framework verze 1.0 konfigurován v souboru Machine.config.
<httpHandlers>
<add verb="*" path="trace.axd" type="System.Web.Handlers.TraceHandler" />
<add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory" />
<add verb="*" path="*.ashx" type="System.Web.UI.SimpleHandlerFactory" />
<add verb="*" path="*.asmx" type="System.Web.Services.Protocols.WebServiceHandlerFactory,
System.Web.Services, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
validate="false"/>
<add verb="*" path="*.rem" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,
System.Runtime.Remoting, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
validate="false"/>
<add verb="*" path="*.soap" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,
System.Runtime.Remoting, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
validate="false"/>
<add verb="*" path="*.asax" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.ascx" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.config" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.cs" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.csproj" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.vb" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.vbproj" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.webinfo" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.asp" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.licx" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.resx" type="System.Web.HttpForbiddenHandler" />
<add verb="*" path="*.resources" type="System.Web.HttpForbiddenHandler" />
<add verb="GET,HEAD" path="*" type="System.Web.StaticFileHandler" />
<add verb="*" path="*" type="System.Web.HttpMethodNotAllowedHandler" />
</httpHandlers>
Následující výchozí element httpHandlers je v rozhraní .NET Framework verze 2.0 konfigurován v kořenovém souboru Web.config.
<httpHandlers>
<add path="trace.axd" verb="*" type="System.Web.Handlers.TraceHandler" validate="True" />
<add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader"
validate="True" />
<add path="*.axd" verb="*" type="System.Web.HttpNotFoundHandler" validate="True" />
<add path="*.aspx" verb="*" type="System.Web.UI.PageHandlerFactory" validate="True" />
<add path="*.ashx" verb="*" type="System.Web.UI.SimpleHandlerFactory" validate="True" />
<add path="*.asmx" verb="*" type="System.Web.Services.Protocols.WebServiceHandlerFactory,
System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="False" />
<add path="*.rem" verb="*" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,
System.Runtime.Remoting, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
validate="False" />
<add path="*.soap" verb="*" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory,
System.Runtime.Remoting, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
validate="False" />
<add path="*.asax" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.ascx" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.master" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.skin" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.browser" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.sitemap" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.dll.config" verb="GET,HEAD" type="System.Web.StaticFileHandler" validate="True" />
<add path="*.exe.config" verb="GET,HEAD" type="System.Web.StaticFileHandler" validate="True" />
<add path="*.config" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.cs" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.csproj" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.vb" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.vbproj" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.webinfo" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.licx" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.resx" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.resources" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.mdb" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.vjsproj" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.java" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.jsl" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.ldb" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.dsdgm" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.ssdgm" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.lsad" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.ssmap" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.cd" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.dsprototype" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.lsaprototype" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.sdm" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.sdmDocument" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.mdf" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*.ldf" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
<add path="*" verb="GET,HEAD,POST" type="System.Web.DefaultHttpHandler" validate="True" />
<add path="*" verb="*" type="System.Web.HttpMethodNotAllowedHandler" validate="True" />
</httpHandlers>
Příklad
Následující příklad demonstruje jak udělat tyto kroky:
Namapovat všechny požadavky protokolu HTTP pro soubory s příponou názvu souboru .New na třídu MyHandler.New.
Namapovat požadavky GET a HEAD pro soubory s příponou .MyNewFileExtension na třídu MyHandler.MNFEHandler.
Obě třídy jsou v sestavení MyHandler, které se nachází v souboru MyHandler.dll.
<configuration>
<system.web>
<httpHandlers>
<add verb="*"
path="*.New"
type="MyHandler.New,MyHandler"/>
<add verb="GET,HEAD"
path="*.MyNewFileExtension"
type="MyHandler.MNFEHandler,MyHandler.dll"/>
</httpHandlers>
</system.web>
</configuration>
Informace prvku
Obslužná rutina konfiguračního oddílu |
|
Konfigurační člen |
|
Konfigurovatelná umístění |
Machine.config Web.config kořenové úrovně Web.config aplikační úrovně Soubor web.config na úrovni fyzického nebo virtuálního adresáře |
Požadavky |
Microsoft Internet Information Services (IIS) 5.0, 5.1 nebo 6.0 .NET Framework, verze 1.0, 1.1 nebo 2.0 Microsoft Visual Studio 2003 nebo Visual Studio 2005 |
Viz také
Úkoly
Postupy: Uzamknutí nastavení konfigurace technologie ASP.NET
Odkaz
Element system.web (schéma nastavení ASP.NET)
Podelement add elementu httpHandlers (schéma nastavení ASP.NET)
Podelement clear elementu httpHandlers (schéma nastavení technologie ASP.NET)
Odebrat element pro httpHandlers (schéma nastavení technologie ASP.NET)
Koncepty
Přehled konfigurace technologie ASP.NET
Ovládací prvky webového serveru technologie ASP.NET a schopnosti prohlížeče
Zabezpečení konfigurace technologie ASP.NET
Scénáře konfigurace technologie ASP.NET
Další zdroje
Konfigurační soubory technologie ASP.NET