Ce module est implémenté dans le fichier mod_isapi.c
, et est compilé par défaut. Il gère le support des extensions ISAPI lorsqu'Apache tourne sous Microsoft Windows. Tout document associé à un handler isapi-isa
sera traité par ce module.
Ce module implémente l'API ISAPI Extension. Il permet aux applications Internet Server (c'est-à-dire aux extensions ISAPI) d'être utilisées en collaboration avec Apache pour Windows.
Dans le fichier de configuration du serveur, ajoutez un gestionnaire (handler) appelé isapi-isa
, et associez-le aux fichiers d'extension .DLL. En d'autres termes :
AddHandler isapi-isa dll
Placez alors simplement les DLLs ISA dans l'arborescence accessible par le serveur, lesqueles seront chargées lorsqu'on y accèdera par leur URL directes.
Les extensions ISAPI sont sujettes aux mêmes restrictions que les scripts CGI. C'est-à-dire, Options ExecCGI
doit être activé pour les répertoires qui contiennent les ISA.
L'implémentation des ISAPI par Apache est conforme à l'ensemble des définitions de la spécification ISAPI 2.0, sauf pour ce qui est des extensions spécifiques à "Microsoft" utilisant des entrées/sorties asynchrones. Le modèle d'entrée/sortie asynchrone d'Apache ne permet pas d'effectuer des lectures et écritures asynchrones de la façon dont les ISAPI en ont besoin. Si une extension ISA tente d'accéder à une entrée/sortie asynchrone, un message d'erreur sera inscrit dans la trace d'erreur pour vous aider à le détecter.
Certains serveurs, comme l'IIS de Microsoft, chargent les ISA dans le serveur, puis les gardent tant que les ressources mémoire restent suffisantes, auquel cas elles sont déchargées. Apache charge et décharge les ISA à chaque requête. Ceci peut paraître assez inefficace, mais le modèle des requêtes Apache oblige à utiliser cette méthode. Une prochaine version tentera de mettre en place une méthode plus efficace de chargement.
Apache 1.3a1 limite actuellent la taille des données associées aux requêtes POST et PUT à 48ko par requête, ceci pour éviter certains problèmes en rapport avec l'implémentation des ISAPI. Nous espérons pouvoir proposer bientôt des possibilités de téléchargement plus importantes.
Enfin, souvenez-vous que si Apache supporte les extensions ISAPI, il ne supporte toutefois pas les filtres ISAPI. Ce support sera ajouté dans un futur proche, mais aucune prévision n'est faite actuellement à ce sujet.
Adaptation française © Valery Fremaux / EISTI 1998