Contexte de serveur d'applications
Table des matières
Contexte de serveur d'applications
- URI
- Emplacement
- Chemin binaire
- Type d’application
- Fichier de demarrage
- Mode d'exécution
- Connexions max.
- Environnement
- Activer Expires
- Expires par defaut
- Expires par type
- Operations d’en-tete
- Fichiers index
- Index automatique
- Realm
- Nom d’authentification
- Require (utilisateurs/groupes autorises)
- Acces autorise
- Acces refuse
- Authorizer
- Activer rewrite
- Heriter rewrite
- Base rewrite
- Règles de réécriture
- Ajouter le charset par defaut
- Charset par defaut personnalise
- Activer la recherche GeoLocation
Contexte de serveur d'applications
Description
Un contexte de serveur d'applications fournit un moyen simple de configurer une application Ruby Rack/Rails, WSGI ou Node.js. Pour ajouter une application via un contexte de serveur d'applications, il suffit de monter l'URL et d'indiquer le repertoire racine de l'application. Il n'est pas necessaire de definir une application externe, d'ajouter un gestionnaire 404, de configurer des regles de reecriture, etc.
URI
Description
Indique l’URI de ce contexte.
Syntaxe
L’URI peut etre une URI simple (commencant par "/") ou une URI d’expression reguliere compatible Perl (commencant par "exp:"). Si une URI simple se termine par "/", ce contexte inclura toutes les sous-URI sous cette URI. Si le contexte est mappe vers un repertoire du systeme de fichiers, un "/" final doit etre ajoute.
Voir aussi
Emplacement
Description
Indique l’emplacement correspondant de ce contexte dans le systeme de fichiers.
Valeur par defaut: $DOC_ROOT + URI
Syntaxe
Il peut s’agir d’un chemin absolu ou d’un chemin relatif a $SERVER_ROOT, $VH_ROOT ou $DOC_ROOT. $DOC_ROOT est le chemin relatif par defaut et peut etre omis.
Si URI est une expression reguliere, la sous-chaine correspondante peut etre utilisee pour former la chaine "Root". Elle peut etre referencee avec les valeurs "$1" - "$9". "$0" et "&" peuvent referencer toute la chaine correspondante. Une chaine de requete peut aussi etre definie en ajoutant "?" suivi de la chaine de requete. Attention: "&" doit etre echappe sous la forme "\&" dans la chaine de requete.
Exemple
Pour simuler mod_userdir d’Apache, definissez URI sur exp: ^/~([A-Za-z0-9]+)(.*), definissez Emplacement sur /home/$1/public_html$2. Avec ces parametres, une requete URI /~john/foo/bar.html sera mappee vers le fichier /home/john/public_html/foo/bar.html.
Voir aussi
Type d’application
Description
Type d’application utilise pour ce contexte. Rack/Rails, WSGI ou Node.js sont pris en charge.
Fichier de demarrage
Description
Emplacement du fichier utilise pour demarrer l’application, relatif au repertoire racine de l’application.
Les noms de fichier de demarrage par defaut incluent 'config.ru' pour Rack/Rails, 'wsgi.py' et 'passenger_wsgi.py' pour WSGI, et 'app.js' pour NodeJS.
Syntaxe
Chemin relatif au repertoire racine de l’application
Mode d'exécution
Description
Indique le mode d'exécution de l'application: "Development", "Production" ou "Staging". La valeur par défaut est "Production".
Syntaxe
Sélectionner dans la liste déroulante
Connexions max.
Description
Indique le nombre maximal de connexions concurrentes pouvant etre etablies entre le serveur et une application externe. Ce reglage controle combien de requetes peuvent etre traitees simultanement par une application externe; toutefois, la limite reelle depend aussi de l'application externe elle-meme. Augmenter cette valeur n'aidera pas si l'application externe n'est pas assez rapide ou ne peut pas monter en charge avec un grand nombre de requetes concurrentes.
Syntaxe
Nombre entier
Conseils
Performance Definir une valeur elevee ne se traduit pas directement par de meilleures performances. Fixer la limite a une valeur qui ne surcharge pas l'application externe donnera les meilleures performances/le meilleur debit.
Environnement
Description
Indique des variables d'environnement supplementaires pour l'application externe.
Syntaxe
Key=value. Plusieurs variables peuvent etre separees par "ENTER"
Activer Expires
Description
Indique s’il faut generer un en-tete Expires pour les fichiers statiques. Si active, un en-tete Expires sera genere selon Expires par defaut et Expires par type.
Cela peut etre defini aux niveaux serveur, hote virtuel et contexte. Les parametres de niveau inferieur remplaceront ceux de niveau superieur, c’est-a-dire que les parametres de contexte remplaceront ceux de l’hote virtuel et les parametres de l’hote virtuel remplaceront ceux du serveur.
Syntaxe
Sélectionner avec les boutons radio
Expires par defaut
Description
Indique les parametres par defaut pour la generation de l’en-tete Expires. Ce parametre prend effet lorsque Activer Expires est defini sur "Yes". Il peut etre remplace par Expires par type. Ne definissez pas ce defaut au niveau serveur ou hote virtuel sauf si necessaire, car il generera des en-tetes Expires pour toutes les pages. La plupart du temps, cela doit etre defini au niveau contexte pour certains repertoires qui ne changent pas souvent. S’il n’y a pas de parametre par defaut, aucun en-tete Expires ne sera genere pour les types non indiques dans Expires par type.
Syntaxe
A|Mseconds
Le fichier expirera apres le temps de base (A|M) plus les secondes indiquees. Le temps de base "A" definit la valeur sur le temps d’acces du client et "M" sur le temps de derniere modification du fichier.
Expires par type
Description
Indique les parametres d’en-tete Expires pour des types MIME individuels.
Syntaxe
Liste separee par des virgules de "MIME-type=A|Mseconds". Le fichier expirera apres le temps de base (A|M) plus les secondes indiquees.
Le temps de base "A" definit la valeur sur le temps d’acces du client et "M" sur le temps de derniere modification du fichier. MIME-type accepte le caractere generique "*", comme image/*.
Operations d’en-tete
Description
Indique les en-tetes de reponse/requete supplementaires a ajouter. Plusieurs directives d’en-tete peuvent etre ajoutees, une directive par ligne. "NONE" peut desactiver l’heritage des en-tetes parents. Si aucune directive n’est fournie, 'Header' est supposee.
Syntaxe
[Header]|RequestHeader [condition] set|append|merge|add|unset header [value] [early|env=[!]variable]
Exemple
append Cache-control no-store
Header set My-header cust_header_val
RequestHeader set My-req-header cust_req_header_val
Conseils
Information La syntaxe et l’utilisation sont similaires aux directives mod_headers d’Apache pour les operations prises en charge.
Information La directive 'Header' est facultative et peut etre exclue ou conservee lors de la copie de regles sans probleme.
Fichiers index
Description
Indique les noms des fichiers index qui seront recherches sequentiellement lorsqu’une URL est mappee vers un repertoire. Vous pouvez le personnaliser aux niveaux serveur, hote virtuel et contexte.
Syntaxe
Liste de noms de fichiers index separes par des virgules.
Conseils
Performance Ne definissez que les fichiers index dont vous avez besoin.
Index automatique
Description
Indique s’il faut générer à la volée un index de répertoire lorsque les fichiers d’index listés dans Fichiers index ne sont pas disponibles dans un répertoire. Cette option est personnalisable au niveau hôte virtuel et contexte, et elle est héritée le long de l’arborescence de répertoires jusqu’à être explicitement remplacée. Vous pouvez personnaliser la page d’index générée. Consultez les How-tos du wiki en ligne.
Syntaxe
Sélectionner avec les boutons radio
Conseils
Security Il est recommandé de désactiver Index automatique partout où c’est possible afin d’éviter de révéler des données confidentielles.
Voir aussi
Realm
Description
Indique le realm d’autorisation pour ce contexte. Lorsqu’il est indique, un nom d’utilisateur et un mot de passe valides doivent etre fournis pour acceder a ce contexte. Realms d'autorisation sont configures dans la section Hôte virtuel - Sécurité. Ce parametre utilise le Nom du realm de chaque realm.
Syntaxe
Sélectionner dans la liste déroulante
Nom d’authentification
Description
Indique un nom alternatif pour le realm d’autorisation du contexte actuel. S’il n’est pas indique, le nom original du realm sera utilise. Le nom d’authentification est affiche dans la fenetre de login du navigateur.
Require (utilisateurs/groupes autorises)
Description
Indique quels utilisateurs/groupes peuvent acceder a ce contexte. Cela permet d’utiliser une base de donnees utilisateur/groupe (indiquee dans Realm) sur plusieurs contextes, tout en n’autorisant que certains utilisateurs/groupes de cette base pour ce contexte.
Syntaxe
La syntaxe est compatible avec la directive Require d’Apache. Par exemple:
- user username [username ...]
Seuls les utilisateurs listes peuvent acceder a ce contexte. - group groupid [groupid ...]
Seuls les utilisateurs appartenant aux groupes listes peuvent acceder a ce contexte.
Acces autorise
Description
Indique quelles IPs ou sous-reseaux sont autorises a acceder aux ressources sous ce contexte. Avec Acces refuse et le controle d’acces de niveau serveur/hote virtuel, l’accessibilite est determinee par le plus petit perimetre dans lequel se trouve l’adresse IP du client.
Syntaxe
Liste d’IPs/sous-reseaux separee par des virgules.
Exemple
Acces refuse
Description
Indique quelles IPs ou sous-reseaux ne sont PAS autorises a acceder aux ressources sous ce contexte. Avec Acces autorise et le controle d’acces de niveau serveur/hote virtuel, l’accessibilite est determinee par le plus petit perimetre dans lequel se trouve l’adresse IP du client.
Syntaxe
Liste d’IPs/sous-reseaux separee par des virgules.
Exemple
Authorizer
Description
Indique une application externe pouvant generer des decisions autorise/non autorise. Actuellement, seul FastCGI Authorizer est disponible. Pour plus de details sur le role FastCGI Authorizer, consultez https://fastcgi-archives.github.io/ .
Syntaxe
Sélectionner dans la liste déroulante
Activer rewrite
Description
Indique s’il faut activer le moteur de réécriture d’URL de LiteSpeed. Cette option peut être personnalisée au niveau hôte virtuel ou contexte, et elle est héritée le long de l’arborescence de répertoires jusqu’à être explicitement remplacée.
Syntaxe
Sélectionner avec les boutons radio
Heriter rewrite
Description
Indique s’il faut heriter les regles rewrite des contextes parents. Si rewrite est active et non herite, la base rewrite et les regles rewrite definies dans ce contexte seront utilisees.
Syntaxe
Sélectionner avec les boutons radio
Règles de réécriture
Description
Indique une liste de règles de réécriture au niveau hôte virtuel.
N’ajoutez PAS ici de règles de réécriture au niveau racine des documents. Si vous avez des règles de réécriture au niveau racine des documents provenant de .htaccess, vous devez plutôt créer un contexte statique avec uri "/" et y ajouter les règles de réécriture.
Une règle de réécriture comprend une directive RewriteRule et peut être précédée, facultativement, de plusieurs directives RewriteCond.
- Chaque directive doit tenir sur une seule ligne.
- RewriteCond et RewriteRule suivent la syntaxe des directives rewrite d’Apache. Copiez-collez simplement les directives rewrite depuis vos fichiers de configuration Apache.
- Il existe de légères différences entre les implémentations LiteSpeed et Apache mod_rewrite:
- %\{LA-U:variable\} et %\{LA-F:variable\} sont ignorées par le moteur de réécriture LiteSpeed
- Deux nouvelles variables serveur sont ajoutées dans le moteur de réécriture LiteSpeed: %\{CURRENT_URI\} représente l’URI actuelle traitée par le moteur de réécriture, et %\{SCRIPT_NAME\} a la même signification que la variable d’environnement CGI correspondante.
- Le moteur de réécriture LiteSpeed arrête de traiter les règles de réécriture après avoir rencontré un indicateur [L] afin d’éviter les boucles, tandis qu’Apache mod_rewrite n’arrête le traitement des règles de réécriture que pour l’itération actuelle. Ce comportement est similaire à celui de l’indicateur [END] dans Apache mod_rewrite.
L’implémentation du moteur de réécriture LiteSpeed suit les spécifications du moteur de réécriture Apache. Pour plus de détails sur les règles de réécriture, consultez la documentation mod_rewrite d’Apache et le guide Apache de réécriture d’URL .
Syntaxe
chaîne
Ajouter le charset par defaut
Description
Indique s’il faut ajouter une balise de jeu de caracteres a l’en-tete de reponse "Content-Type", lorsque le type de contenu est "text/html" ou "text/plain" sans parametres. Avec Off, cette fonction est desactivee. Avec On, le jeu de caracteres indique par Charset par defaut personnalise ou le defaut "iso-8859-1" sera ajoute.
Syntaxe
Sélectionner avec les boutons radio
Charset par defaut personnalise
Description
Indique un jeu de caracteres a utiliser lorsque Ajouter le charset par defaut vaut On. C’est facultatif. La valeur par defaut est iso-8859-1. Cette entree n’a aucun effet lorsque Ajouter le charset par defaut vaut Off.
Syntaxe
Nom d’un jeu de caracteres.
Exemple
Activer la recherche GeoLocation
Description
Indique s’il faut activer/desactiver la recherche IP Geolocation. Peut etre defini aux niveaux serveur, hote virtuel ou contexte. IP Geolocation est desactivee par defaut lorsque la valeur "Not Set" est utilisee.
Syntaxe
Sélectionner avec les boutons radio