Configurare server Web IIS – integrare, structură, cascadare

Să nu facem vreo confuzie: vorbesc despre Internet Information Services (IIS) 7.0, serverul de Web Microsoft livrat împreună cu Windows Vista și toate edițiile din Windows Server 2008.

Întreaga arhitectură a serverului de Web IIS a fost refăcută. Modularizată. Dar despre asta voi vorbi un pic mai încolo, pentru că e o discuție tehnică destul de avansată.

În ce privește configurarea, hai să vedem ce s-a întâmplat față de versiunea anterioară, IIS 6.0 livrat cu Windows XP Professional și Windows Server 2003. În cea mai mare parte, schimbările îi vizează pe furnizorii serviciilor de hosting și dezvoltatorii de aplicații sau site-uri Web.

IIS 7.0 nu mai are Metabase
Adio metabase, locul unde se stocau configurările IIS 6.0. Metabase nu mai este. Ce problemă avea metabase? Nu putea fi configurat decât de utilizatorii cu drepturi de administrare pe mașina rulând IIS 6.0. Ceea ce punea o problemă de management. Nu întotdeauna cel ce administrează serverul (ca mașină sau sistem de operare) este și administrator al serverului de Web. Și nu orice administrator de server Web este și administratorul site-urilor sau aplicațiilor pe acel server de Web. Practic, discutăm de cazul tipic de scenariu pentru hosting: găzduirea mai multor site-uri pe aceeași mașină.

Configurare integrată cu ASP.NET
Toate setările serverului de Web și cele pentru aplicațiile ASP.NET conviețuiesc acum în fișiere de configurare XML. Aceste fișiere se pot edita fie prin consola de management IIS, fie manual, fie prin linie de comandă, cu utilitarul appcmd.exe. Consola grafică de management IIS este acum integrată: poate schimba configurările serverului de web, cele asociate aplicațiilor ASP.NET, ale serviciilor FTP, SMTP, Remote Management etc.

Fișiere XML de configurare
IIS Management Cosole modifică, de fapt, aceste fișiere de configurare. Dar acestea pot fi modificate și manual, dacă vrem. Avem la dispoziție și schemele acestor fișiere, ca să știm ce taguri și ce atribute avem voie să folosim. Schemele sunt plasate de obicei în
C:\Windows\System32\inetsrv\config\schema\.
Pont: mutarea acestor fișiere de configurare de pe o mașină pe alta permite setarea unor ferme Web cu multiple noduri configurate la fel. Replicarea configurării este mult mai simplă cu IIS 7.0, pentru că se face prin copiere de fișiere.

Configurare cascadată
Setările IIS din aceste fișiere de configurare funcționează cascadat. Cine face pagini de Web și știe despre CSS (Cascading Style Sheets) intuiește la ce mă refer. Da’ hai să vedem cum cascadează, care sunt nivelele:

  1. Configurare server
    Setările de la acest nivel sunt păstrate în fișierul applicationHost.config aflat la C:\Windows\System32\inetsrv\config\
    Când în consola IIS selectăm, în arborele din stânga, nodul serverului, consola va citi sau modifica setările din acest fișier. Natural, setările de aici vor afecta toate site-urile și aplicațiile de pe serverul de web. Adică vor cascada pe nivelele de mai jos.
  2. Configurare site
    Setările de la acest nivel sunt păstrate în fișierele Web.config aflate în rădăcina fiecărui site. Când în consola IIS selectăm, în arborele din stânga, nodul unui site, consola va citi sau modifica setările din fișierul de configurare al site-ului. De cele mai multe ori, fișierul Web.config al unui site este mult mai sărac în setări decât applicationHost.config. Asta pentru că majoritatea setărilor unui site sunt de fapt "moștenite" sau cascadate din applicationHost.config. Setările moștenite pot fi anulate sau suprascrise (overridden), dar numai în măsura în care administratorul serverului de Web o permite. Voi spune mai multe când vom discuta despre delegarea managementului, într-un articol viitor.
  3. Configurare aplicație
    Fiecare site de pe serverul Web poate avea sub-aplicații. Fiecare aplicație are un fișier de configurare Web.config. Setările de la nivelul aplicație sunt moștenite sau le suprascriu pe cele de la nivelul site-ului, care, la rândul lor, moștenesc sau le suprascriu pe cele din applicationHost.config (unde se permite). Atenție – sub nivelul aplicație nu sunt permise alte setări de tip Web.config.

P.S. Probabil va trebui să adaug un exemplu de cascadare a unei configurări, de suprascriere și de împiedicare a suprascrierii. Ca să vă țin în priză, spun doar că se corelează cu delegarea administrării unui site și/sau managementului la distanță al unui site.

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s