Active Server Pages i Windows 2000

Det nye styresystem byder på spændende nyheder for ASP-udviklere.

Styresystemet Windows 2000 Server leveres med en ny version af web-serveren Internet Information Server (IIS), 5.0. I forhold til version 4.0, der følger med Windows NT Server, er der sket adskillige forbedringer, ikke mindst indenfor ASP (Active Server Pages), en teknologi, som gør det muligt at udføre scripts på serveren.


En af de vigtigste forbedringer ligger uden tvivl i hastigheden - Microsoft hævder selv, at eksisterende ASP-applikationer kører 50-100 pct. hurtigere under Windows 2000 end under Windows NT 4.0. Denne artikel kigger på et lille udvalg af de nye muligheder, som findes i ASP under IIS 5.0.


Server.Transfer


Det er ofte nødvendigt at sende brugeren videre til en anden ASP-side. Hidtil har den eneste mulighed været metoden Response.Redirect, som sender en besked til browseren om, at denne skal kalde en bestemt URL. Problemet med Response.Redirect er bl.a., at der spildes tid med at kalde klienten, der igen skal kontakte serveren. Det ville være nemmere, hvis hele opgaven kunne klares på serveren.


Det er nu muligt med metoden Server.Transfer. Når denne metode kaldes, overføres kontrollen over output-kanalen til den nye ASP-side, der også har adgang til alle variabler i Request-samlingen. I modsætning til Response.Redirect kan Server.Transfer dog ikke kalde et dokument på en anden maskine.


Nedenfor ses et eksempel på, hvor metoden kan bruges:


side1.asp


< %

Response.Write("Denne sætning er skrevet på side 1")

Session("enVar") = "Denne variabel er sat på side 1"

Server.Transfer("side2.asp")

% >


side2.asp


< %

Response.Write(Session("enVar") & ", men skrevet på side 2")

% >


Resultatet af et kald til side1.asp er:


Denne sætning er skrevet på side 1

Denne variabel er sat på side 1, men skrevet på side 2.


Server.Execute


IIS 5.0 indeholder en anden ny metode, Server.Execute, der ligesom Server.Transfer kan bruges til at hente programkode fra en anden side, uden at sende besked til klienten om at gå til en ny URL. Server.Execute er en form for include, der henter en ASP-fil og behandler indholdet, som var det del af det aktuelle dokument. I modsætning til Server.Transfer skifter applikationen ikke til en ny side; når behandlingen af indholdet i dokumentet er afsluttet, skifter kontrollen til den gamle side.


Metoden er en nem genvej til modulære applikationer, hvor man kan undgå at gentage den samme ASP-kode på hver side, og den kan udnyttes til at lave betingede includes, hvor indhold kun importeres, hvis en bestemt forudsætning er opfyldt.


Nedenfor ses eksemplet fra før, denne gang med Server.Execute. Som det kan ses, kan vi inkludere programlogik efter kaldet til Server.Execute, fordi kontrollen over applikationen bliver på den aktuelle side.


side1.asp


< %

Response.Write("Denne sætning er skrevet på side 1")

Session("enVar") = "Denne variabel er sat på side 1"

Server.Execute("side2.asp")

Response.Write("Denne sætning er igen skrevet på side 1")

% >


side2.asp


< %

Response.Write(Session("enVar") & ", men skrevet på side 2")

% >


Bedre Browser Capabilites


ASP indeholder en komponent kaldet Browser Capabilities, der fortæller, hvilke egenskaber klientens browser understøtter. Komponenten bruger en statisk tekstfil, som programmøren selv kan opdatere med nye informationer. Denne model har en række svagheder, ikke mindst at komponenten kun returnerer informationer om default-indstillinger; de fleste browsere giver imidlertid brugeren muligheden for at ændre konfigurationen.


I IIS 5.0 kan Browser Capabilities læse en cookie, som sendes fra klienten, og bruge den til at finde frem de til nøjagtige egenskaber, som er aktiveret i browseren. En sådan cookie kan f.eks. sendes med et simpelt script på klient-siden. Applikationen kan så tilpasses klientens egenskaber.


HTML-filer gemt som .ASP


Som udvikler kan man ofte være fristet til at gemme alle sine applikationsfiler med endelsen .asp, selvom nogle filer slet ikke indeholder programkode og derfor i realiteten kunne gemmes med endelsen .htm. Problemet har hidtil været, at serveren spilder tid med at lede efter programkode i filen, hvis endelsen er .asp, mens htm-filer straks sendes ubehandlet til klienten. Det tager derfor længere tid at hente filer med .asp end med .htm, og serveren spilder ressourcer på at søge efter programkode som ikke findes.


I IIS 5.0 bliver ASP-filer uden scripts behandlet næsten lige så hurtigt som htm-filer. Hastigheden er stadig ikke helt den samme - og kan aldrig blive det, for serveren skal først indlæse filen for at undersøge, om den indeholder scripts som skal udføres - men hastighedsforskellen er blevet mindre. Det kan nu anbefales at gemme filer med asp-endelsen, selvom de ikke indeholder kode, hvis man regner med at tilføje scripts på et senere tidspunkt.


Flere informationer


Denne artikel har kun præsenteret en meget lille del af mulighederne i ASP under IIS 5.0. Uddybende informationer findes i den elektroniske hjælpedokumentation, der følger med Windows 2000 Server, og på nedenstående Internet-adresser:


msdn.microsoft.com /library/psdk/iisref/iiwachng.htm


msdn.microsoft.com /library/psdk/iisref/iiwanew.htm


msdn.microsoft.com /workshop/server/asp/server02282000.asp

    Annonce

    Computerworld Events

    Vi samler hvert år mere end 6.000 deltagere på mere end 70 events for it-professionelle.

    Ekspertindsigt – Lyt til førende specialister og virksomheder, der deler viden om den nyeste teknologi og de bedste løsninger.
    Netværk – Mød beslutningstagere, kolleger og samarbejdspartnere på tværs af brancher.
    Praktisk viden – Få konkrete cases, værktøjer og inspiration, som du kan tage direkte med hjem i organisationen.
    Aktuelle tendenser – Bliv opdateret på de vigtigste dagsordener inden for cloud, sikkerhed, data, AI og digital forretning.

    Sikkerhed | København

    Cyber Security Festival 2026

    Mød Danmarks skrappeste it-sikkerhedseksperter og bliv klar til at planlægge og eksekvere en operationel og effektiv cybersikkerhedsstrategi, når vi åbner dørene for +1.700 it-professionelle. Du kan glæde dig til oplæg fra mere end 80 talere og...

    It-løsninger | København

    Dynamics 365 FO: Næste niveau for data, AI og forretning

    Få overblik over vejen fra Dynamics AX til Finance & Operations – eller løft værdien af Dynamics FO. Hør praksisnære cases om strategi, migration og optimering. Vælg spor, få dyb faglig indsigt, styrk beslutningerne. Tilmeld dig konferencen i...

    It-løsninger | København

    Data & Analytics Day 2026

    Computerworld samler danske cases og skarpe keynotes om operationel brug af data. Få greb til automatisering, generativ AI, predictive analytics og tættere dataintegration. Omsæt analyser til handling i hverdagen. Læs mere og tilmeld dig Data &...

    Se alle vores events inden for it

    Navnenyt fra it-Danmark

    T-Systems har pr. 11. november 2026 ansat Henrik Fugmann som Industry Lead, Public Sector. Henrik skal især beskæftige sig med forretningsudvikling indenfor den offentlige sektor med fokus på digital suverænitet, herunder cloud, AI og sikkerhed. Henrik kommer fra en stilling som Business Director hos DXC Technology. Nyt job

    Henrik Fugmann

    T-Systems

    Systematic A/S har pr. 1. august 2026 ansat Casper Voldstedlund, 52 år,  som Director, Products. Han skal især beskæftige sig med drive produktudvikling inden for national sikkerhed og kritisk infrastruktur (NSI). Han kommer fra en stilling som Senior Director hos Stibo Systems A/S. Nyt job

    Casper Voldstedlund

    Systematic A/S

    IFS Danmark A/S har pr. 1. november 2026 ansat Emma Karlsson som Solution Architect. Emma skal især beskæftige sig med at forstå kundernes behov og vise, hvordan løsninger fra IFS kan skabe værdi for dem. Emma kommer fra en stilling som Industry Lead Solution Engineer & AI Champion hos Oracle. Emma er uddannet MSc Industrial Engineering and Management, MBA. Emma har tidligere beskæftiget sig med ERP-systemer på tværs af industrier, forretningsprocesser, implementering og presales. Nyt job

    Emma Karlsson

    IFS Danmark A/S

    Vektus A/S har pr. 22. oktober 2026 ansat Jim Neble som Consultant Manager. Han skal især beskæftige sig med konsulentchefopgaven i Jylland. Han kommer fra en stilling som ERP Manager hos Kvik. Han er uddannet indenfor økonomi og Business Andministration samt Cand.merc. i strategi, organisation og ledelse. Han har tidligere beskæftiget sig med Konsulentopgaver indenfor Business Central i partnerkanalen. Nyt job

    Jim Neble

    Vektus A/S