# Programmeren in ASP.NET/Server

Normaal gezien staat de ASP.NET-server op het Internet, terwijl de gebruiker thuis of op kantoor de pagina's bekijkt (de client).
Als je ASP.NET-pagina's maakt, kan je die alleen bekijken als ze eerst door een server verwerkt worden. Als je ze rechtstreeks als bestand opent vanaf je eigen harde schijf wordt de ASP.NET code niet uitgevoerd, en krijg je dus een heel ander resultaat.
Als ASP.NET-programmeur kan je je eigen pc als server gebruiken, maar tegelijk ook als client om de pagina's te bekijken.

## Vereisten

Om ASP.NET te kunnen draaien als server heb je twee dingen nodig:
* Internet Information Server (IIS). Dit is de webserver die bij Windows hoort. Dat betekent dat je HTML-pagina's kan laten bekijken door anderen, via de browser. IIS wordt meegeleverd op de CD-ROM van Windows 2000, en Windows XP Professional Edition. Je kunt IIS ook op Windows NT 4.0 installeren met het apart te downloaden Option Pack.
* Het .NET framework. Hiermee krijg je ook ondersteuning voor ASP.NET-pagina's. Op Windows 2003 is dit framework al standaard geïnstalleerd. Op Windows NT 4.0, 2000 of XP moet je het nog apart toevoegen, maar het kan ook zijn dat het al geïnstalleerd werd als onderdeel van andere toepassingen. Afhankelijk van wat je provider aanbiedt, moet je versie 1.1 of versie 2.0 installeren.
Op een computer die niet als server hoeft te dienen (bijvoorbeeld de computer waarop je je pagina's uittest) is IIS niet echt nodig. Je kan ook de kleine Cassini-server gebruiken, die ingebouwd zit in Visual Web Developer. Sommige zaken, zoals beveiliging, werken in Cassini een beetje anders, zodat je daarmee niet altijd alles kan testen.
Opmerkingen:
* IIS kan normaal gezien niet op Windows XP Home Edition geïnstalleerd worden. Op het internet zijn wel tips te vinden om dit te omzeilen.
* IIS heeft veel configuratiemogelijkheden. Dit is zo omvangrijk dat je daar een heel boek aan kunt besteden.
* Als je eerst het .NET framework installeert en daarna IIS, dan wordt het onderdeel ASP.NET niet geïnstalleerd. Deze moet je dan handmatig registreren met de tool aspnet_regiis, welke geïnstalleerd is met het .NET framework. De opdrachtregel luidt: "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i"
De installatiestappen voor de verschillende Windows versies worden hieronder besproken. Na het installeren kun je het beste nog even testen of de installatie goed werkt.

## IIS installeren

We maken een onderscheid tussen de verschillende Windows-platforms.

### Windows NT 4.0 Workstation

* Log aan met beheerdersrechten.
* Ga naar de bestanden van NT 4.0 Option Pack en zoek de map x86/Win.WKS. Start setup.exe.
* Klik bij het openingsscherm op Next en kies in het volgende scherm voor Typical installatie.
* Kies de map waarin de website bestanden (HTML en ASP) moeten komen te staan. Standaard is dit C:\Inetpub\wwwroot en we raden aan dit zo te houden. Klik op Next.
* Herstart de computer na installatie (indien nodig).

### Windows NT 4.0 Server

* Log aan met beheerdersrechten.
* Ga naar de bestanden van NT 4.0 Option Pack en zoek de map x86/Win.SRV. Start setup.exe.
* Klik bij het openingsscherm op Next en kies in het volgende scherm voor Typical installatie.
* Kies de map waarin de website bestanden (HTML en ASP) moeten komen te staan. Standaard is dit C:\Inetpub\wwwroot en het is aan te raden dit zo te houden.
* Kies eventueel ook een map voor de FTP Service. Het is aan te raden deze niet te veranderen, die geldt ook voor het Application Installation Point. Klik op Next.
* Kies de map voor de SMTP Service. Standaard is dit C:\Inetpub\Mailroot. Wij raden aan dit zo te houden. Klik op Next.
* Herstart de computer na installatie (indien nodig).

### Windows 2000 Professional en Windows XP Professional

* Log aan met beheerdersrechten.
* Open "Add/Remove Programs" in het Control Panel.
* Kies in de linker balk voor "Add/Remove Windows Components".
* Vink Internet Information Services (IIS) aan en klik op Next.
* Kies de map waarin de website bestanden (HTML en ASP) moeten komen te staan. Standaard is dit C:\Inetpub\wwwroot en het is aan te raden dit zo te houden.

### Windows 2000 Server

* Log aan met beheerdersrechten.
* Open "Add/Remove Programs" in het Control Panel.
* Kies in de linker balk voor "Add/Remove Windows Components".
* Vink Internet Information Services (IIS) aan en klik op Next.
* Kies de map waarin de website bestanden (HTML en ASP) moeten komen te staan. Standaard is dit C:\Inetpub\wwwroot en het is best dit zo te houden.

### Windows XP Home

* Microsoft heeft geen ondersteuning voorzien voor IIS op Windows XP Home.
* Met een beetje prutswerk kan je het wel installeren, zie bijvoorbeeld: http://www.15seconds.com/issue/020118.htm.
* Je hebt een cd nodig van Windows 2000 Advanced Server.

### Windows Vista

Windows Vista (uitgezonderd de Home Basic-versie) bevat IIS 7.0.
* Log aan met beheerdersrechten
* Open Control Panel - Programs - Turn Windows features on or off.
* Vink Internet Infomation Services aan en klik op OK.

## De installatie testen

* Ga naar Control Panel, Administrative Tools, Internet Information Services.
* Controleer of de www-service actief is. Dubbelklik op de servernaam, en klik dan op "Web sites". In het rechterframe moet de Default Web Site de Running-state hebben. Zoniet, kies op de Default Web Site het snelmenu en selecteer start.
* Bekijk je eigen web in Internet Explorer door het volgende adres in te tikken: "127.0.0.1" of "localhost". Je krijgt een pagina "Under construction"
* Op de schijf waar Windows op staat (gewoonlijk c:) is nu een folder INetPub toegevoegd met de volgende subfolders: Adminscripts, ftproot, iissamples, mailroot, Scripts, webpub, en wwwroot.

## Startpagina instellen

Als je de URL van een server intikt (bv. nl.wikipedia.org) krijg je meestal een bepaalde pagina te zien. Je kan op je webserver instellen welke pagina dat is. Standaard kiest IIS voor een pagina "default.htm", maar de meeste sites gebruiken "index.htm" of "index.html". Afhankelijk van je eigen keuze kan je dit instellen:
* Control Panel – Administrative Tools – Internet Information Services
* Blader naar "Default Web Site"
* Kies Action – Properties in het menu
* Kies de klep "Document"
* Voeg bij "Enable Default Document" de naam van de startpagina toe (bv. index.htm), en gebruik de knoppen om die bovenaan in de lijst te brengen.
* Kopieer je eigen pagina (bijvoorbeeld index.htm) naar x:\INetPub\wwwroot (x: is de schijf waar Windows geïnstalleerd staat, meestal c:).
* Controle: bekijk je eigen web in Internet Explorer door het volgende adres in te tikken: "127.0.0.1" of "localhost"

## Testen of ASP werkt op je server

ASP (de voorloper van ASP.NET) zou nu al moeten werken. ASP.NET werkt pas als je het dotNET framework installeert (zie volgende paragraaf).
* Maak in de map C:\Inetpub\wwwroot (of de map die je hebt opgegeven bij installatie) een tekstbestand test.asp en gebruik bijvoorbeeld Notepad om daarin de volgende code te zetten:
* Open je browser en typ in: http://localhost/test.asp
* Als het goed is zie je de datum en tijd weergegeven in de opgevraagde pagina. ASP werkt!
Let op het verschil:
Het is nochtans hetzelfde bestand!

## Installatie ASP.NET

Je hebt nu een webserver die ASP-pagina's kan verwerken, maar nog geen ASP.NET (wel in Windows 2003). Dat moet je nog installeren, hetgeen heel simpel is.
Hiervoor moet je minstens de .NET redistributable (23 MB) downloaden, bijvoorbeeld van http://www.asp.net/download.aspx (gratis).
Dubbelklik op het gedownloade bestand dotnetredist.exe en volg de instructies.
Als je Windows XP hebt met SP1 of hoger, of Windows 2003, dan is het .NET Framework al geïnstalleerd. Als je echter eerder geen IIS installeerde, kan het zijn dat ASP.NET nog niet geïnstalleerd is. In dat geval moet je de .NET redistributable gewoon nog eens installeren.
Na de installatie moet je ook het laatste Service Pack installeren. Dit is een programma dat recent ontdekte fouten, bugs en beveiligingsproblemen herstelt in de originele versie. Je kan het laatste service pack het snelst installeren via http://windowsupdate.microsoft.com.
Als je zonder probleem door de installatie geraakt bent, kan je beginnen programmeren met .NET. Heb je gemerkt dat je niet eens moet herstarten? Als je pc aan alle voorwaarden voor .NET voldoet, is de installatie van het .NET Framework meestal probleemloos.