Version 0.8.0 |
---|
Apache HTTP Server |
Cette version contient une nouvelle installation et changements divers.
- Nouveau script de configuration de Robert Thau.
- Mécanisme de tableau de bord pour la régulation du nombre de processus de serveur existants. Les valeurs par défaut de MaxServers et StartServers sont les mêmes que pour NCSA, mais les significations sont légèrement différentes. Ainsi, il faut abaisser la valeur par défaut de MaxServers à 10.
- Avant de demander une nouvelle connexion, chaque processus de serveur vérifie le nombre d'autres serveurs en attente de connexion. S'il y a plus que MaxServers, il s'éteint silencieusement. À l'inverse, chaque processus racine, ou de maintenance, chaque seconde le nombre de serveurs est en attente d'une nouvelle connexion. S'il y a moins de StartServers, il en commence un nouveau. Il ne dépend pas du nombre de processus serveur déjà existants.
- La comptabilité est organisée dans un fichier scoreboard, nommé /tmp/htstatus.*, dans lequel chaque processus possède un descripteur de fichier indépendant (il doit chercher sans interférence).
- L'effet final est que MaxServers est le nombre maximal de serveurs sur une machine serveur inactif, mais que d'autres serveurs en seront déduits pour gérer des charges inhabituellement lourdes (ou des clients anormalement lents); ceux-ci mourront quand ils ne seront plus nécessaires - sans revenir à la surcharge d'une opération de forçage complet. Il y a un maximum de 150 processus de serveur compilés, principalement pour éviter de perdre le contrôle de la machine et de ne pas entraîner la machine vers un plantage. Dans les tests d'endurance de serveur de Robert Thau, le mécanisme ne semblait pas imposer de surcharge significative, même après l'avoir forcé à placer le fichier scoreboard sur un système de fichiers normal (pouvant avoir plus de surcharge que tmpfs).
- Définit les variables HTTP_FOO pour les SSI <!--#exec cmd-->s, et pas uniquement pour les scripts CGI.
- Lire les fichiers .htaccess même dans le répertoire avec la section <Directory>. Ancienne incompatibilité notée sur la liste de diffusion, maintenant corrigée.
- Un «HEAD /» donne au client un message d'erreur «Bad Request», plutôt que d'essayer de n'envoyer aucun corps et potentiellement aucun en-tête.
- Ne produisez pas de rapports d'erreur doubles pour des cas très obscurs impliquant principalement la configuration de l'authentification (le cas où tous les modules refusent d'être géré, ce qui est un signe certain d'un bogue du serveur dans la plupart des cas, mais se produit également lorsque l'authentification est mal configurée).
- Déplace le FCNTL_SERIALIZED_ACCEPT définit dans le fichier conf.h.
- Nettoyage de code accidentelle dans http_main.c - arrêtez de faire glisser sa_client autour; il suffit de déclarer où de l'utiliser.
- Un autre correctif lié à l'accent. Il n'aime pas le caractère constant à certains endroits...
Dernière mise à jour : Jeudi, le 24 janvier 2019