Onglet Apache : Configuration avancée du serveur web

Les onglets Applications web et Apache ne sont disponibles qu'après activation du service, Activer le serveur web Apache à oui, dans l'onglet Services.

L'onglet expert Apache permet de déclarer des applications web supplémentaires et d'affiner la configuration du serveur web.

Applications supplémentaires

Pour déclarer de nouvelles applications web, il faut tout d'abord passer la variable Déclarer des applications web supplémentaires à oui.

Déclaration d'une application web dans gen_config
Déclaration d'une application web dans gen_config

Il est ensuite possible d'ajouter des déclarations en cliquant sur le bouton + Chemin complet l'application (exemple : /var/www/html/appli), puis remplir les 2 paramètres :

  • Chemin complet l'application (exemple : /var/www/html/appli) ;

  • Alias de l'application (exemple : /appli).

La variable Fichier à rechercher lorsqu'un client envoie une requête pour l'index d'un répertoire (disponible à partir de la version 2.6.2 d'EOLE) permet de définir le fichier ressource à rechercher lorsqu'un client envoie une requête pour l'index d'un répertoire, en ajoutant un '/' à la fin du nom de ce dernier (directive : DirectoryIndex).

Exemple

  • Chemin complet l'application (exemple : /var/www/html/appli) : /var/www/html/egroupware

  • Alias de l'application (exemple : /appli) : /egw

Après instanciation ou reconfiguration du module, le logiciel doit répondre à l'adresse : http://<adresse_serveur>/egw

Remarque

La déclaration a pour effet la création d'un fichier de configuration Apache dans /etc/apache2/sites-enabled/. Elle n'installe pas et ne suffit en aucun cas à faire fonctionner une nouvelle application web.

Une section de la documentation décrit le processus complet d'ajout d'applications web.

Configuration Apache

Les variables permettent de modifier et de fixer une sélection de paramètres disponibles pour la configuration Apache MPM (module multi-processus) prefork dans différents fichiers de configuration : /etc/apache2/.

Truc & astuce

Les nom de ces paramètres de configuration apache se retrouvent dans le nom des variables Creole et sont préfixés par la chaîne "mpm_", l'affichage du nom des variables s'obtient dans le mode debug de l'interface de configuration du module.

  • Permettre de lister les répertoires et leur contenu : impacte le fichier /etc/apache2/sites-available/default en ajoutant la directive Options -Indexes.

  • Temps en secondes pendant lequel le serveur va attendre des entrées/sorties avant de considérer qu'une requête a échoué.

  • Autoriser les connexions persistantes : Passer ce paramètre à Off permet d'empêcher tout client de consommer trop de ressources du serveur.

  • Nombre de processus enfants du serveur créés au démarrage : Cette directive permet de définir le nombre de processus enfants du serveur créés au démarrage.

  • Nombre minimum de processus serveurs enfants inactifs : Cette directive permet de définir le nombre minimum désiré de processus serveurs enfants inactifs. Un processus inactif est un processus qui ne traite pas de requête. S'il y a moins processus inactifs que la valeur saisie, le processus parent va créer de nouveaux enfants de la manière suivante : il en crée un, attend une seconde, il en crée deux, attend une seconde, il en crée quatre, puis continue ainsi exponentiellement jusqu'à ce que son taux de création de processus enfants soit de 32 par seconde. Il ne s'arrête que lorsque le nombre de processus enfants correspond au chiffre saisi dans la directive.

  • Nombre maximum de processus serveurs enfants inactifs : Cette directive permet de définir le nombre maximum souhaité de processus serveurs enfants inactifs. Un processus inactif est un processus qui ne traite pas de requête. S'il y a plus processus inactifs que le chiffre saisi, le processus parent arrêtera les processus excédentaires.

  • Nombre maximum de connexions pouvant être traitées simultanément : Si la limite maximum est atteinte, toute tentative de connexion sera mise dans une file d'attente (la valeur de la directive ServerLimit ne doit pas être supérieur à la valeur de cette variable, aussi elle est automatiquement adaptée dans le template).

  • Nombre maximum de connexions qu'un processus enfant va traiter au cours de son fonctionnement : Si ce nombre est défini à 0, il n'y a plus aucune limite sur le nombre de connexions que le processus pourra traiter.

Complément

Pour plus d'informations, vous pouvez consulter la liste des directives de la version MPM d'Apache : https://httpd.apache.org/docs/2.4/fr/mod/prefork.html

Configuration PHP

Les autres variables permettent de modifier et de fixer une sélection de paramètres disponibles dans le fichier de configuration : /etc/php5/apache2/php.ini.

Truc & astuce

Les nom de ces paramètres de configuration PHP se retrouvent dans le nom des variables Creole et sont préfixés par la chaîne "php_", l'affichage du nom des variables s'obtient dans le mode debug de l'interface de configuration du module.

  • Taille maximale des données reçues par la méthode POST (en Mo) : Définit la taille maximale des données reçues par la méthode POST. Cette option affecte également le chargement des fichiers. Pour charger de gros fichiers, cette valeur doit être plus grande que la valeur de la Taille maximale d'un fichier à charger (en Mo).

Attention

Si le module Scribe fonctionne avec un module Amon il faut également régler la Taille maximale des données reçues par la méthode POST (en Mo) en mode expert dans l'onglet Reverse proxy du module Amon.

  • Taille maximale d'un fichier à charger (en Mo) : Définit la taille maximale d'un fichier à charger.

  • Temps maximal d'exécution d'un script (en secondes) : Fixe le temps maximal d'exécution d'un script. Cela permet d'éviter que des scripts en boucles infinies saturent le serveur. La configuration par défaut est de 30 secondes.

  • Durée maximale pour analyser les données d'entrée (en secondes) : Cette option spécifie la durée maximale pour analyser les données d'entrée via les méthodes POST et GET. Cette durée est mesurée depuis le moment où PHP est invoqué sur le serveur jusqu'au début de l'exécution du script.

  • Taille mémoire maximale qu'un script est autorisé à allouer (en Mo) : Cette option détermine la mémoire limite qu'un script est autorisé à allouer. Cela permet de prévenir l'utilisation de toute la mémoire par un script mal codé. Notez que pour n'avoir aucune limite, vous devez définir cette directive à -1.

  • Affichage des erreurs à l'écran : Affiche les messages d'erreur PHP directement sur les pages consultées, attention cette option ne doit pas être utilisée en production et s'applique à toutes les applications web hébergées sur le serveur.

  • Durée de vie des données sur le serveur (en secondes) : Spécifie la durée de vie des données sur le serveur. Après cette durée, les données seront considérées comme obsolètes, et supprimées.

  • Nombre d'octets à lire dans le fichier utilisé comme source additionnelle d'entropie : Spécifie le nombre d'octets qui seront lus dans le fichier /dev/urandom. Par défaut, il vaut 0 , c'est à dire inactif.

  • Activer la directive de configuration browscap : La directive de configuration browscap permet d'obtenir plus d'information sur les capacités du navigateur client grâce à la fonction get_browser() : http://browscap.org/.

Complément

Pour plus d'informations, vous pouvez consulter les exemples de configuration :

  • /usr/share/doc/php5-common/examples/php.ini-development
  • /usr/share/doc/php5-common/examples/php.ini-production

ou consulter la liste des directives du fichier php.ini : http://www.php.net/manual/fr/ini.list.php