Active Server Pages (ASP) : le langage serveur de Microsoft

Active Server Pages (ASP) : le langage serveur de Microsoft
Sommaire5 sections
  1. 01Une exécution côté serveur, pas côté navigateur
  2. 02Un serveur Microsoft à l’origine, portable ensuite
  3. 03Les sept objets qui composent une page ASP
  4. 04Si vous maintenez encore un site en ASP classique
  5. 05Pour aller plus loin

ASP (Active Server Pages) est une technologie mise au point par Microsoft en 1996 pour développer des applications web au contenu dynamique. Une page ASP, reconnaissable à son extension .asp, peut afficher un contenu différent selon des paramètres comme les informations stockées dans une base de données ou les préférences de l’utilisateur connecté. Une page web « classique », en .htm ou .html, affiche au contraire toujours la même chose, quel que soit le visiteur.

Aujourd’hui, un site professionnel s’appuie plutôt sur ASP.NET, PHP ou un framework plus récent. Comprendre ASP classique reste utile pour qui reprend la maintenance d’un site ancien encore en ligne, ou pour situer d’où viennent des concepts que l’on retrouve, sous d’autres noms, dans les technologies serveur actuelles.

Une exécution côté serveur, pas côté navigateur

ASP est en réalité un environnement de programmation qui représente sous forme d’objets les interactions entre le navigateur du client, le serveur web, et les connexions à des bases de données via ADO (ActiveX Data Objects) ou des composants COM (Component Object Model). Les scripts ASP s’exécutent du côté du serveur, au même titre que les scripts CGI ou PHP, et non côté client comme le JavaScript ou les applets Java qui tournent dans le navigateur du visiteur.

Concrètement, les balises ASP s’intègrent directement dans une page HTML. Elles indiquent au serveur web que le code placé à l’intérieur doit être interprété avant l’envoi de la réponse, généralement sous forme de code HTML classique renvoyé au navigateur.

Schéma de l’architecture 3-tiers ASP entre navigateur client, serveur web et base de données

Un serveur Microsoft à l’origine, portable ensuite

Les ASP ont d’abord été conçues pour fonctionner sur le serveur web de Microsoft, IIS (Internet Information Server), gratuit et prévu pour tourner sous Windows NT. Cette technologie, pourtant propriétaire à l’origine, a ensuite été portée sur d’autres serveurs : d’abord sur Netscape FastTrack via un module tiers, puis sur Apache avec le module Apache::ASP. Cela a rendu possible la création de sites utilisant la technologie ASP sur des plateformes comme Unix ou Linux, et pas uniquement sous Windows.

Les sept objets qui composent une page ASP

Toute application ASP s’articule autour de sept objets fondamentaux, manipulés par le serveur pour construire la réponse envoyée au navigateur.

ObjetRôle
ApplicationReprésente l’application web dans son ensemble, avec les informations partagées entre tous les visiteurs connectés.
ObjectContextContrôle les transactions avec le serveur de transaction Microsoft (MTS).
RequestRécupère les informations envoyées par le client dans la requête HTTP.
ResponseConstruit et envoie la réponse HTTP au navigateur du client.
ServerContient les informations propres au serveur web lui-même.
SessionConserve des informations d’une page à l’autre pour un même visiteur.
ASPerrorRécupère et décrit les erreurs survenues pendant l’exécution des scripts.

Si vous maintenez encore un site en ASP classique

Un site en ASP classique fonctionne toujours sur un serveur compatible, mais il vieillit mal face aux exigences de sécurité actuelles : la technologie n’est plus activement développée, et les correctifs se font rares. Pour un site encore en production, mieux vaut isoler les scripts les plus anciens, documenter précisément ce qu’ils font, et prévoir une migration progressive vers ASP.NET plutôt que d’ajouter indéfiniment des rustines sur du code vieux de plusieurs années.

Pour aller plus loin

Le site ASPfr.com reste une ressource francophone de référence pour qui doit encore lire ou modifier du code ASP classique.

Résumer cet article avec :

Partager :