Internet Information Services: een flexibele en veilige Windows-gebaseerde webserver

Internet Information Services
Internet Information Services
Home / Blog & Nieuws / Managed hosting / Internet Information Services: een flexibele en veilige Windows-gebaseerde webserver
Internet Information Services (IIS) is een door Microsoft ontwikkelde reeks serverdiensten voor het opzetten van een Windows-gebaseerde webserver. De server is flexibel en veilig te beheren. In dit blog lees je meer over IIS en de mogelijkheden die deze diensten bieden. We kijken naar de componenten waaruit een IIS server bestaat en brengen de voordelen in kaart.

Met IIS kun je aan de slag met het hosten van een eigen website of webshop. Een IIS server accepteert verzoeken van client-systemen, en zorgt dat zij op basis van hun verzoek de juiste reactie geserveerd krijgen. IIS is standaard onderdeel van Windows Server.

Uit welke componenten bestaat een IIS server?

Een IIS server bestaat uit verschillende componenten, die ieder een belangrijke taak vervullen bij het serveren van website en webapplicaties. Het gaat daarbij enerzijds om zogeheten protocol listeners en anderzijds om ondersteunende services.

Protocol listeners

Protocol listeners spelen een onmisbare rol in IIS. Zij ontvangen protocol-specifieke verzoeken, zetten deze door naar IIS voor verwerking en sturen de reactie vanuit IIS terug naar het cliëntsysteem. Twee veelgebruikte protocollen voor verzoeken vanuit cliëntsystemen zijn HTTP en HTTPS. IIS gebruikt standaard HTTP.sys als protocol listener voor HTTP- en HTTPS-verzoeken.

Het is echter ook mogelijk andere protocol listeners in te zetten, waarmee je services en applicaties kunt ondersteunen die andere protocollen dan HTTP en HTTPS gebruiken. Denk hierbij aan Windows Communication Foundation (WCF), dat listener adapters omvat die zowel als protocol listener als listener adapter kunnen dienen. Listener adapters zijn componenten die de communicatie verzorgen tussen Windows Process Activation Service (WAS) en protocol listeners als HTTP.sys. Zodra een listener adapter de benodigde configuratie-informatie ontvangt, configureert dit component de relevante protocol listener en zorgt dat de listener naar verzoeken ‘luistert’.

Services

Naast protocol listeners omvat IIS ook diverse ondersteunende services. Denk hierbij aan de World Wide Web Publishing Service (WWW Service). Deze service fungeert als de listener adapter voor de HTTP-listener HTTP.sys. In deze rol is de WWW Services primair verantwoordelijk voor het configureren van HTTP.sys, updaten van HTTP.sys bij configuratiewijzigingen en notificeren van WAS indien een verzoek wordt opgenomen in de verzoekwachtlijst. Ook levert WWW Service prestatie-indicatoren voor zowel websites als de IIS cache, en helpt zo bij het optimaliseren van de prestaties van je webserver.

Een tweede service is Windows Process Activation Service (WAS), dat sinds IIS 7 beschikbaar is. WAS neemt een deel van de taken over die in IIS 6 en eerder nog door WWW Service werden uitgevoerd. Specifiek gaat het om het beheer van de application pool configuration en worker processen. Worker processen zijn losse instances van een functie, die gelijktijdig werken voor het parallel uitvoeren van een taak. Door een workload over meerdere worker processen uit te spreiden zet je de beschikbare systeemresources efficiënter in. Een application pool definieert een groep van worker processen. Met behulp van een application pool configuration geef je aan alle worker processen binnen de pool vallen een algemene configuratie mee.

Waarom kies je voor IIS?

Het werken met IIS biedt voor softwareontwikkelaars en webdevelopers diverse voordelen.

Functionaliteiten beheren als losse componenten

Een belangrijk voordeel van IIS is dat je alle functionaliteiten van de webserver als losstaande componenten beheert. Je kunt deze componenten eenvoudig toevoegen, verwijderen of vervangen. Dit biedt belangrijke voordelen. Zo kun je alle ongebruikte functionaliteiten van je webserver verwijderen. Belangrijk, want ieder stukje software kan fouten omvatten die cybercriminelen in de kaart spelen. Door het verwijderen van onnodige functionaliteiten dring je de zogeheten attack surface terug en versterk je de veiligheid van je webserver.

Een belangrijk voordeel is ook de mogelijkheid een webserver volledig op maat af te stemmen op de specifieke behoeften van een webapplicatie. Je zet hiermee in feite een op maat gemaakte en gespecialiseerde webserver op voor de toepassing die jij voor ogen hebt. Doordat onnodige functionaliteiten niet aanwezig zijn, verbeter je de prestaties van de webserver en verminder je het geheugengebruik van je website of applicatie.

Extensibility

Met behulp van IIS kun je je bestaande webserver eenvoudig uitbreiden. Zo kun je bijvoorbeeld op maat gemaakte authenticatieschema’s, monitoring, logging en security filtering toevoegen aan je webserver. Denk ook aan load balancing, het redirecten van content en state management.

Prettig is dat je dankzij de ASP.NET integratie servermodules kunt ontwikkelen met behulp van de interfaces van ASP.NET 2.0 en ASP.NET applicatieservices waarmee je vertrouwd ben. Zo optimaliseer je de ontwikkelsnelheid en het gebruiksgemak.

ASP.NET integratie

Met IIS kunnen webapplicaties profiteren van de functionaliteiten en extensibility van ASP.NET 2.0. ASP.NET omvat functionaliteiten die gebruikt kunnen worden voor alle soorten content. Zo kun je een eenduidige gebruikerservaring bieden in de volledige webapplicatie. Ook kun je het bekende ASP.NET extensibility model en de ASP.NET API’s gebruiken voor het bouwen van functionaliteiten voor je IIS server, die net zo krachtig zijn als functionaliteiten geschreven met native C++ API’s.

Aandachtspunten

Hoewel ontwikkelen op een IIS server belangrijke voordelen biedt, zijn er aandachtspunten die je goed in het oog moeten houden. We zetten enkele punten op een rijtje:

Testomgeving kan afwijken van de productieomgeving

Test je een ASP.NET applicatie lokaal? Dan is de kans groot dat je hiervoor de ASP.NET Development Web Server gebruikt, terwijl je productiewebsite van IIS gebruikmaakt. De wijze waarop deze webservers verzoeken afhandelen, kennen enkele verschillen, die belangrijke gevolgen kunnen hebben. De verschillen kunnen ertoe leiden dat je code in je testomgeving probleemloos draait, maar in je productieomgeving toch problemen geeft.

Security op peil houden

Security is een onderwerp dat onmisbaar is voor iedere digitale toepassing. Een webserver is hierop geen uitzondering. IIS bevat diverse functionaliteiten die je helpen met het adequaat beveiligen van een IIS server. Denk hierbij aan het verwijderen van functionaliteiten van IIS die je niet gebruikt en de inzet van logging, zodat je altijd kunt achterhalen wie wat heeft gedaan. Ook diverse andere maatregelen bieden toegevoegde waarde, zoals het volledig up-to-date houden van het Windows-besturingssysteem en het gebruik van firewalls.

Windows hosting door True

Wil je zelf geen omkijken hebben naar het opzetten, monitoren en beheren van een IIS server? True configureert en onderhoudt managed software als IIS volledig, zodat jij hiernaar geen omkijken hebt. Benieuwd naar de mogelijkheden? Lees hier meer IIS hosting door True of plan een vrijblijvend adviesgesprek.

HR Software ontwikkelaars komen bij je solliciteren!
HR Software ontwikkelaars komen bij je solliciteren!
Anouk Raap
Marketingcoördinator bij True