مشاركة عبر


عنصر ال httpHandlers (مخطط إعدادات ASP.NET)

يعيّن الطلبات الواردة الي المعالج المناسب استناداً إلى محدد موقع المعلومات (URL) و الفعل HTTP الذي تم تحديده في طلب. يمكن أن يتم تعريف هذا العنصر في أي مستوى من هيكل ملف التكوين.

<configuration>العنصر
  النظام.ويب عنصر (مخطط إعدادات ASP.NET)
    عنصر ال httpHandlers (مخطط إعدادات ASP.NET)

<httpHandlers>
   <add... />
   <remove... />
   <clear/>
</httpHandlers>

السمات والعناصر

تصف المقاطع التالية سمات، عناصر تابعة وعناصر الأصل.

السمات

لا يوجد.

العناصر التابعة

subtag

الوصف

add

عنصر اختياري.

يحدد تعيين الفعل/المسار للمعالج.

clear

عنصر اختياري.

إزالة كل تعيينات المعالج التي قيد التكوين حاليا أو موروثة.

remove

عنصر اختياري.

إزالة تعيين فعل/مسار للمعالج. remove التوجيه يجب أن يتوافق مع تجميعة الفعل/المسار addللتوجيه السابق. واستخدام أحرف البدل غير مدعم.

العناصر الأصلية

العنصر

الوصف

configuration

تحدد العنصر الجذري المطلوب في كل ملف تكوين مستخدم من قبل وقت تشغيل اللغة العامة وتطبيقات .NET Framework.

system.web

تحدّد جذر العنصر لمقطع التكوين ASP.NET .

ملاحظات

< httpHandlers > يتم توريث الإعدادات بواسطة دلائل التطبيق الفرعية.

add تتم معالجة توجيهات بترتيب من أعلى لإسفل. إذا كان اثنين أو أكثر من add العناصر يحددان نفس تركيبة الفعل/المسار، النهائية add تتجاوز الآخرين.

ملاحظةملاحظة

الخدمات معلومات الإنترنت لـ Microsoft (IIS) لها نوع خاص بها لتعيين ملحقات إلى ISAPIs.يجب تعيين الملحق في IIS إلى ISAPI ASP.NET للتعيين بين ملحق تطبيق معطى ومعالج بها سارية المفعول.للحصول على ملحق غير قياسي مثل الملحقات المخصصة يجب عليك تكوين IIS وفقاً لذلك.

التكوين الافتراضي

لعنصر الافتراضي التالي httpHandlers مكون في ملف Web.config الجذر في الإصدار2.0 من .NET Framework

<httpHandlers />

لعنصر الافتراضي التالي httpHandlers مكون في ملف Web.config الجذر في الإصدار1.1 من .NET Framework

ملاحظةملاحظة

System.Web.HttpForbiddenHandler هو نوع داخلي يقوم بإصدار خطأ HTTP 403 "الحظر: تم رفض الوصول"عند إجراء محاولة للوصول إلى مورد forbidden.

System.Web.StaticFileHandler هو نوع داخلي آخر يعالج الوصول لملفات محددة.في حالة أي مشاكل في الوصول فإنه ينشئ أحد الأخطاء التالية: HTTP 401 خطأ "غير مصرح به"; "خطأ HTTP 403" الحظر: تم رفض الوصول"؛ أو خطأ HTTP 404"أو لم يتم العثور على الملف أو الدليل".

<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>

لعنصر الافتراضي التالي httpHandlers مكون في ملف Web.config الجذر في الإصدار1.0 من .NET Framework

<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>

العنصر الافتراضي التالي httpHandlers مكون في ملف Web.config الجذري في الإصدار2.0 من .NET Framework .

<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>

مثال

يوضح مثال التعليمات البرمجية التالي كيفية القيام بذلك.

  • تعيين كافة طلبات HTTP لملفات ذات ملحق اسم الملف .New إلى الفئةMyHandler.New

  • تعيينGET طلبات و HEADHTTP لملفات ذات ملحق اسم الملف .MyNewFileExtension , إلى الفئةMyHandler.MNFEHandler.

كلا الفئتين في التجميع MyHandler الموجود في الملف 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>

معلومات العنصر

معالج مقطع التكوين

System.Web.Configuration.HttpHandlersSection

عضو التكوين

SystemWebSectionGroup.HttpHandlers

مواقع للتكوين

Machine.config

مستوى جذر ويب.config

مستوى تطبيق ويب.config

الدليل–المستوى ويب.config الفعلية أو الظاهرية

المتطلبات

Microsoft Internet Information Services (IIS) الإصدار 5.0 أو 5.1 أو 6.0.

.NET Framework، الإصدار 1.0 أو 1.1 أو 2.0

Microsoft Visual Studio 2003 أو Visual Studio 2005

راجع أيضًا:

المهام

كيفية: تأمين إعدادات التكوين ASP.NET

المرجع

النظام.ويب عنصر (مخطط إعدادات ASP.NET)

<configuration>العنصر

إضافة عنصر لـ httpHandlers (مخطط إعدادات ASP.NET)

عنصر المسح لـ httpHandlers (مخطط إعدادات ASP.NET)

عنصر الإزالة من أجل httpHandlers (مخطط إعدادات ASP.NET)

System.Configuration

System.Web.Configuration

المبادئ

نظرة عامة حول تكوين ASP.NET

عناصر تحكم ملقم ويب ASP.NET و قدرات المستعرض

تأمين تكوين ASP.NET

وحدات سيناريو التكوين ASP.NET

موارد أخرى

ملفات التكوين ASP.NET

إعدادات تكوين الـ ASP.NET

إعدادات التكوين العامة (ASP.NET)

تكوين ASP.NET API