Programovací rozhraní aplikace internetového serveru - Internet Server Application Programming Interface

The Programovací rozhraní aplikace internetového serveru (ISAPI) je N-úroveň API z Internetová informační služba (IIS), Microsoft kolekce uživatele Okna služby webového serveru. Nejvýznamnější aplikací IIS a ISAPI je Microsoft webový server.

ISAPI byl také implementován Apache je mod_isapi modul, takže webové aplikace na straně serveru napsané pro IIS společnosti Microsoft lze použít s Apache a dalšími webovými servery třetích stran, jako je Webový server Zeus nabídka rozhraní ISAPI.

Microsoft Volá se aplikační software webového serveru Internetová informační služba, který je tvořen řadou „dílčích aplikací“ a je velmi konfigurovatelný. ASP.NET je jeden takový výřez IIS, který umožňuje programátorovi psát webové aplikace podle svého výběru programovacího jazyka (VB.NET, C#, F# ), který je podporován Microsoft .NET CLR. ISAPI je programovací systém mnohem nižší úrovně, který poskytuje mnohem lepší výkon na úkor jednoduchosti.

Aplikace ISAPI

ISAPI se skládá ze dvou komponent: rozšíření a filtry.[1] Toto jsou jediné dva typy aplikací, které lze vyvinout pomocí ISAPI. Filtry i rozšíření je nutné zkompilovat do souborů DLL, které se poté zaregistrují ve službě IIS, aby se mohly spouštět na webovém serveru.

Aplikace ISAPI lze psát v libovolném jazyce, který umožňuje export standardních funkcí C, například C, C ++, Delphi. K dispozici je několik knihoven, které usnadňují vývoj aplikací ISAPI, a v Delphi Pascal komponenty Intraweb pro vývoj webových aplikací. MFC zahrnuje třídy pro vývoj aplikací ISAPI. Kromě toho existuje ATL server technologie, která zahrnuje knihovnu C ++ věnovanou vývoji aplikací ISAPI.

Rozšíření

Rozšíření ISAPI jsou skutečné aplikace, které běží na IIS. Mají přístup ke všem funkcím poskytovaným službou IIS. Rozšíření ISAPI jsou implementována jako DLL které jsou načteny do procesu, který je řízen IIS. Klienti mohou přistupovat k příponám ISAPI stejným způsobem jako ke statické stránce HTML. Některé přípony souborů nebo celou složku nebo web lze namapovat tak, aby byly zpracovány příponou ISAPI.

Filtry

Filtry ISAPI se používají k úpravě nebo vylepšení funkcí poskytovaných službou IIS. Vždy běží na serveru IIS a filtrují každý požadavek, dokud nenajdou takový, který potřebují zpracovat. Filtry lze naprogramovat tak, aby zkoumaly a upravovaly příchozí i odchozí datové toky. Interně programované a externě nakonfigurované priority určují, v jakém pořadí jsou filtry volány.

Filtry jsou implementovány jako DLL a lze je zaregistrovat na serveru IIS na úrovni webu nebo na globální úrovni (tj. Platí pro všechny weby na serveru IIS). Filtry se inicializují při spuštění pracovního procesu a naslouchají všem požadavkům na web, na kterém je nainstalován.

Mezi běžné úkoly prováděné filtry ISAPI patří:

  • Změna dat požadavku (URL nebo záhlaví) zaslaných klientem
  • Řízení toho, který fyzický soubor se namapuje na adresu URL
  • Ovládání uživatelského jména a hesla používaného anonymním nebo základní autentizace
  • Úprava nebo analýza požadavku po dokončení ověřování
  • Úprava odpovědi směřující zpět ke klientovi
  • Spouštění vlastního zpracování odpovědí „přístup odepřen“
  • Po dokončení požadavku probíhá zpracování
  • Spusťte zpracování, když je spojení s klientem ukončeno
  • Provádíme speciální protokolování nebo analýza provozu.
  • Provádíme vlastní ověřování.
  • Zpracování šifrování a komprese.

Běžné aplikace ISAPI

Toto je seznam běžných aplikací ISAPI implementovaných jako rozšíření ISAPI:

  • Stránky aktivního serveru (ASP), instalovaný jako standard
  • ActiveVFP, Aktivní Visual FoxPro nainstalovaný na IIS
  • ASP.NET, nainstalovaný standardně od IIS 6.0 a novější
  • Studená fúze, novější verze ColdFusion jsou instalovatelné na IIS
  • Perl ISAPI (aka Perliis), k instalaci zdarma
  • PHP, k dispozici k instalaci zdarma, již není udržována.[2]

Vývoj ISAPI

Aplikace ISAPI lze vyvíjet pomocí libovolného vývojového nástroje, který dokáže generovat a Okna DLL. Průvodci pro generování aplikací rámce ISAPI jsou k dispozici ve vývojových nástrojích společnosti Microsoft od verze Visual C ++ 4.0.

Viz také

Reference

  1. ^ Hadi., Nahari (2011). Zabezpečení webového obchodu: design a vývoj. Krutz, Ronald L. Indianapolis: Wiley Pub. str. 157. ISBN  9781118098899. OCLC  757394142.
  2. ^ https://bugs.php.net/bug.php?id=48299