Manuel utilisateur
Version 1.9 — Rev. 3

# Applications externes

Le serveur web LiteSpeed peut transmettre des requetes a des applications externes pour traiter et generer du contenu dynamique.
Depuis la version 2.0, LiteSpeed Web Server prend en charge sept types d'applications externes: CGI, FastCGI, serveur web, moteur servlet, application LiteSpeed SAPI, equilibreur de charge et logger par tube.

- CGI signifie Common Gateway Interface. Le standard actuel est CGI/1.1. Les applications CGI s'executent dans des processus autonomes. Un processus CGI est lance pour chaque requete et se termine apres avoir traite la requete.
- FastCGI est une interface de serveur web rapide, ouverte et securisee qui resout les problemes de performance propres a CGI sans introduire la surcharge ni la complexite des APIs (Application Programming Interfaces) proprietaires. Pour plus d'informations, consultez https://fastcgi-archives.github.io/.
  Dans LiteSpeed Web Server, les applications FastCGI peuvent prendre deux roles: generer des reponses dynamiques (role responder) ou autoriser des requetes (role authorizer). LiteSpeed Web Server definit aussi deux types d'applications FastCGI: FastCGI local et FastCGI distant. Les applications FastCGI locales sont demarrees automatiquement par le serveur web a la demande. Les applications FastCGI distantes ne sont pas demarrees par le serveur web. (Elles peuvent s'executer sur une machine distante ou sur la meme machine.)
- Un serveur web est une application serveur qui prend en charge les protocoles HTTP 1.0/1.1. Le serveur web LiteSpeed peut agir comme proxy inverse transparent pour accelerer et proteger les serveurs web et les serveurs d'applications. Lorsqu'il communique avec des serveurs web backend, LiteSpeed essaiera toujours d'utiliser des connexions persistantes afin d'obtenir les meilleures performances.
- Un moteur servlet est une application, comme Apache Tomcat ou Jetty, qui implemente Java servlets et Java Server Pages. LiteSpeed peut communiquer avec les moteurs servlet via AJPv1.3 (Apache JServ Protocol version 1.3). Un moteur servlet ne peut pas etre demarre par le serveur web et peut etre configure pour s'executer sur une machine distante.
- Une application LiteSpeed SAPI (LiteSpeed Server Application Programming Interface) est une application qui communique avec LiteSpeed Web Server via LSAPI, une interface serveur rapide et evolutive concue specialement pour permettre a LiteSpeed Web Server d'atteindre une efficacite maximale.
  Le mecanisme de fonctionnement de LSAPI est similaire a FastCGI, mais les applications LSAPI peuvent etre jusqu'a 30% plus rapides que des applications FastCGI comparables. LSAPI est fortement recommande a la place de FastCGI pour les applications prises en charge. (LSAPI prend actuellement en charge les applications ecrites en PHP, Ruby et Python.)
  Pour plus d'informations sur LSAPI, consultez https://www.litespeedtech.com/open-source/litespeed-sapi .
- Un equilibreur de charge est une application externe virtuelle qui assigne les requetes aux applications worker backend selon la charge de travail. Les applications worker peuvent etre CGI, FastCGI, Web Server (Proxy), moteur servlet ou applications LSAPI. Differents types d'applications peuvent etre melanges dans un meme equilibreur de charge. Les equilibreurs de charge et les loggers par tube ne peuvent pas etre utilises comme applications worker.
- Un logger par tube est une application qui peut traiter les journaux d'acces en temps reel, par exemple en ecrivant un journal d'acces dans une base de donnees ou en effectuant des calculs de statistiques en temps reel.

Contrairement aux applications CGI, les applications FastCGI, les applications LSAPI et les moteurs servlet ne se terminent pas apres le traitement d'une requete. Le processus applicatif reste actif et traite autant de requetes que possible. La connexion socket peut aussi etre reutilisee pour plusieurs requetes.
Les applications externes peuvent etre configurees dans la section Applications externes. Toutefois, les applications externes ne peuvent pas fonctionner seules. Des reglages supplementaires doivent etre configures pour que le serveur web sache quelles requetes envoyer a quelle application. Il existe deux facons de configurer cela dans LiteSpeed Web Server:

1. Definir l'application externe comme handler pour un contexte specifique.
2. Definir l'application externe comme handler d'un langage de script via une liaison de suffixe de fichier.

Les applications FastCGI, applications LSAPI, Web Servers (Proxy), moteurs servlet et equilibreurs de charge doivent etre definis dans la section Applications externes avant de pouvoir etre configures pour gerer un contexte ou un suffixe de script. Il n'est pas necessaire de definir les applications CGI dans la section Applications externes.
Les applications externes peuvent etre configurees au niveau serveur ou au niveau virtual host. Lorsqu'elle est configuree au niveau serveur, l'application peut etre utilisee par tous les virtual hosts. Lorsqu'elle est configuree au niveau virtual host, elle ne peut etre utilisee que par ce virtual host.

### Type

#### Description

Indique le type d'application externe. Les types d'application sont differencies selon le service qu'ils fournissent ou le protocole qu'ils utilisent pour communiquer avec le serveur. Choisissez parmi

- LiteSpeed SAPI App: une application qui communique avec le serveur web au moyen du protocole LSAPI.
- Web Server (Proxy): un serveur web ou serveur d'applications qui prend en charge le protocole HTTP.
- FastCGI App: une application FastCGI avec un role Responder.
- FastCGI Authorizer: une application FastCGI avec un role Authorizer
- SCGI App: une application qui communique avec le serveur web au moyen du protocole SCGI.
- Servlet Engine: un moteur servlet avec connecteur AJPv13, tel que Tomcat.
- Piped Logger: une application capable de traiter les entrees du journal d'acces recues sur son flux STDIN.
- Load Balancer: une application virtuelle capable d'equilibrer la charge entre des applications worker.
- uWSGI: une application qui communique avec le serveur web au moyen du protocole uWSGI.<.

#### Syntaxe

Sélectionner dans la liste déroulante

#### Conseils

Information La plupart des applications utiliseront le protocole LSAPI ou FastCGI. LSAPI prend en charge PHP, Ruby et Python. Perl peut etre utilise avec FastCGI. (PHP, Ruby et Python peuvent aussi etre configures pour s'executer avec FastCGI, mais ils sont plus rapides avec LSAPI.) Java utilise des moteurs servlet.