httpHandlers için add Ögesi (ASP.NET Ayarlar Şeması)
Uygulamaya bir işleyici ekler. İşleyici, IHttpHandler veya belirli URL'ler için istekleri işleyen IHttpHandlerFactory arabirimi olur.
<add verb="verb list"
path="path/wildcard"
type="type,assemblyname"
validate="true|false" />
Öznitelikler ve Öğeler
Öznitelikler, alt ve üst ögeler aşağıdaki bölümlerde açıklanmaktadır.
Öznitelikler
Öznitelik |
Açıklama |
---|---|
path |
Gerekli öznitelik. Path özniteliğinin tek bir URL yolu veya basit bir joker karakter dizesi (örneğin, *.aspx) içerebildiğini belirtir. |
type |
Gerekli öznitelik. Virgülle ayrılmış bir sınıf/birleştirme bileşimini belirtir. ASP.NET, derleme DLL dosyasını öncelikle uygulama için özel \bin dizininde, ardından sistem derleme önbelleğinde arar. |
verb |
Gerekli öznitelik. Fiil listesinin, virgülle ayrılmış HTTP fiillerinden (örneğin, "GET, PUT, POST") veya başlatma komut dosyası eşleştirmesinden (örneğin, joker karakteri * [yıldız işareti]) oluştuğunu belirtir. |
validate |
İsteğe bağlı öznitelik. false ise, ASP.NET asıl eşleme isteği gelene kadar sınıfı yüklemeye çalışmaz. Büyük olasılıkla bu, hatayı geciktirebilir ancak başlatma süresini artırır. |
Alt Öğeler
Yok.
Üst Öğeler
Öge |
Açıklama |
---|---|
configuration |
Ortak dil çalıştırma modülü ile .NET Framework uygulamaları tarafından kullanılan bütün yapılandırma dosyalarında yer alması gereken kök ögeyi belirtir. |
System.web |
ASP.NET yapılandırma bölümünün kök ögesini belirler. |
httpHandlers |
Gelen istekleri, URL'e ve istekte belirtilen HTTP eylemine göre uygun IHttpHandler veya IHttpHandlerFactory arayüzüne eşler. |
Açıklamalar
<httpHandlers> ayarları alt yönergeler tarafından devralınır.
<add> yönergeleri sırayla, yukarıdan aşağıya doğru işlenir. İki veya daha fazla <add> alt yönerge aynı fiil/yol bileşimini belirtiyorsa, en son <add> diğerlerini geçersiz kılar.
Microsoft Internet Information Services'in (IIS) ISAPI'lara yapılan eşleme uzantıları için kendi modu vardır. Bu bölümdeki bir uzantıyla ilgili ayarların etkili olabilmesi için, uzantı, IIS'te ASP.NET ISAPI'ya eşlenmiş olmalıdır. Standart olmayan uzantılar (.aspx, .asmx, .asax, vb. dışındakiler) için, IIS'i yapılandırmalısınız.
Varsayılan Yapılandırma
Aşağıdaki varsayılan add ögesi .NET Framework sürüm 1.1'deki Machine.config dosyasında yapılandırılır.
<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"/>
Aşağıdaki varsayılan add ögesi .NET Framework sürüm 1.0'daki Machine.config dosyasında yapılandırılır.
<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" />
Aşağıdaki varsayılan add ögesi .NET Framework sürüm 2.0'daki kök Web.config dosyasında yapılandırılır.
<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" />
Örnek
Aşağıdaki kod örneğinde, .New uzantılı dosyaları için tüm HTTP isteklerinin MyHandler.New sınıfına ve .MyNewFileExtension uzantılı dosyalar için HTTP GET ve HEAD isteklerinin MyHandler.MNFEHandler. sınıfına nasıl eşlendiği gösterilmektedir. Bu sınıflar MyHandler.dll dosyasındaki MyHandler derlemesindedir.
<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>
Öğe Bilgileri
Yapılandırma bölümü işleyicisi |
|
Yapılandırma üyesi |
|
Yapılandırılabilir konumlar |
Machine.config Kök düzeyinde Web.config Uygulama düzeyinde Web.config Sanal veya fiziksel dizin düzeyinde Web.config |
Gereksinimler |
Microsoft Internet Information Services (IIS) sürüm 5.0, 5.1 veya 6.0 .NET Framework sürüm 1.0, 1.1 veya 2.0 Microsoft Visual Studio 2003 veya Visual Studio 2005 |
Ayrıca bkz.
Görevler
Nasıl Yapılır: ASP.NET Yapılandırması kilitlemek Ayarlar
Başvuru
httpHandlers Ögesi (ASP.NET Ayarlar Şeması)
system.web Ögesi (ASP.NET Ayarlar Şeması)
httpHandlers için clear Ögesi (ASP.NET Ayarlar Şeması)
httpHandlers için remove Ögesi (ASP.NET Ayarlar Şeması)
Kavramlar
ASP.NET yapılandırmasına genel bakış
ASP.NET web sunucusu Denetimler ve tarayıcı yetenekleri
ASP.NET Yapılandırması güvenliğini sağlama
ASP.NET Yapılandırması senaryoları
Diğer Kaynaklar
ASP.NET Yapılandırması dosyalarının