Serveur HTTP Apache
Serveur HTTP Apache
| |
---|---|
![]() | |
donnee de base
| |
développeur | Fondation du logiciel Apache [1] |
Année de publication | 1995 |
Version actuelle | 2.4.54 [2] ( 8 juin 2022 ) |
système opérateur | indépendance limitée de la plateforme |
langage de programmation | C [3] [4] [5] [6] |
Catégorie | serveur Web |
Licence | Licence Apache Version 2.0 [7] , Licence Apache Version 1.1 [8] |
httpd.apache.org |
Le serveur HTTP Apache [ əˈpætʃi ] est un produit open source et gratuit de l' Apache Software Foundation et l'un des serveurs Web les plus largement utilisés sur Internet . [9]
histoire
Un groupe de huit développeurs a commencé à étendre le serveur Web NCSA HTTPd en 1994. Ceux-ci étaient en détail : Brian Behlendorf , Roy T. Fielding , Rob Hartill, David Robinson, Cliff Skolnick, Randy Terbush, Robert S. Thau et Andrew Wilson avec le soutien d'Eric Hagberg, Frank Peters et Nicolas Pioch.
Ils nommèrent le résultat de leur travail Apache HTTP Server et le publièrent en avril 1995. C'était le projet fondateur de l' Apache Software Foundation .
origine du nom
Le nom a été choisi par respect pour la tribu indienne nord-américaine des Apaches . [10] Il est incorrect que le nom soit un homophone de « un serveur inégal », ce qui signifierait quelque chose comme « un serveur reconstitué ». Cette interprétation est née du fait que le serveur HTTP Apache était à l'origine une extension corrigée de l'ancien serveur HTTP NCSA . [11]
propriétés et fonctions
Outre Unix et Linux , Apache prend en charge Win32 , NetWare et un grand nombre d'autres systèmes d'exploitation. Dans Apache 2.4, la prise en charge des systèmes d'exploitation plus anciens et morts depuis longtemps tels que BeOS , TPF et A/UX a pris fin. [12] Dans la version 2.0, la stabilité et la vitesse du serveur - en particulier sur les systèmes non Unix - ont été considérablement améliorées : la bibliothèque Apache Portable Runtime (APR) fournit une généralisation des appels système importants, de sorte que les points forts individuels du système d'exploitation respectifpeut être exploité. En outre, il existe divers modules de multitraitement (MPM) qui, selon la plate-forme, offrent différentes solutions pour le traitement simultané de plusieurs requêtes client : par exemple, le préfork MPM pour les systèmes Unix classiques repose sur des processus de bifurcation , tandis que mpm_winnt optimise pour les threads les plus recommandés sous Windows sont.
Le serveur web Apache a une structure modulaire : avec les modules appropriés , il peut, par exemple, chiffrer la communication entre le navigateur et le serveur web ( mod_ssl ), être utilisé comme serveur proxy ( mod_proxy ) ou effectuer des manipulations complexes des données d'en-tête HTTP ( en-têtes de mod ) et URL ( réécriture de mod ). .
Apache offre la possibilité de créer des sites Web de manière dynamique en utilisant des langages de script côté serveur. Les langages de script couramment utilisés sont PHP , Perl ou Ruby . Les autres langages incluent Python , JavaScript (par exemple V8CGI ), Lua , Tcl et .NET (en utilisant ASP.NET ou Mono ). Ceux-ci ne font pas partie du serveur Web, mais doivent également être intégrés en tant que modules ou adressés via le CGI , car Apache, contrairement à nginxest basé sur un module. Les modules peuvent être activés ou désactivés à tout moment. Server Side Include (SSI) peut être exécuté via le mod_include inclus avec l'installation d'Apache . Cela permet de créer des sites Web dynamiques simples et de minimiser l'administration des sites Web statiques.
Comme tous les programmes de l'Apache Software Foundation, le serveur HTTP Apache est un logiciel libre . La version stable 2.4.x est actuellement toujours prise en charge et donc fournie avec des mises à jour de sécurité, par exemple. Les développeurs Apache recommandent la version 2.4.x pour une utilisation productive. [13]
Documentation
Il existe un manuel pour le serveur Web. Certaines distributions (par exemple Ubuntu [14] ) le fournissent sous la forme d'un package de programme séparé ( il existe un package apache2-doc pour le package apache2 ). En fonction de la configuration de la langue du navigateur Web, qu'il transmet dans le champ Accept-Language du HTTP , le manuel est livré dans la langue appropriée si celle-ci est disponible.
distributions
Le serveur HTTP Apache est inclus par défaut dans presque toutes les distributions Linux et dans macOS . Une distribution de développement populaire pour Windows , Linux et Mac OS X est XAMPP .
Versions majeures
- Apache 1.x : Cette version a été publiée pour la première fois en 1995 . La poursuite du développement de la dernière branche de développement 1.3.x a expiré en février 2010. Depuis lors, la version 1 n'a reçu des mises à jour de sécurité que lorsque cela était nécessaire. Entre-temps, la fourniture de mises à jour de sécurité a également été interrompue.
- Apache 2.x : Cette version a été publiée pour la première fois en mars 2000. A partir de cette version, seule la branche de développement 2.4 est fournie avec les mises à jour de sécurité et les développements ultérieurs.
aperçu des versions
Légende: | Ancienne version; N'est plus pris en charge | Ancienne version; toujours pris en charge | Version actuelle | Pré-version actuelle | future version |
---|
Apache 1
Apache 1.0
version | parution [15] |
---|---|
1.0.0 | avril 1996 |
Apache 1.3
version | publication |
---|---|
1.3.0 | 6 juin 1998 |
1.3.1 | 22 juillet 1998 |
1.3.2 | 23 septembre 1998 |
1.3.3 | 9 octobre 1998 |
1.3.4 | 11 janvier 1999 |
1.3.5 | non publié |
1.3.6 | 24 mars 1999 |
1.3.7 | non publié |
1.3.8 | non publié |
1.3.9 | 19 août 1999 |
1.3.10 | non publié |
1.3.11 | 21 janvier 2000 |
1.3.12 | 25 février 2000 |
1.3.13 | non publié |
1.3.14 | 13 octobre 2000 |
1.3.15 | non publié |
1.3.16 | non publié |
1.3.17 | 29 janvier 2001 |
1.3.18 | non publié |
1.3.19 | 1 mars 2001 |
1.3.20 | 1 mai 2001 |
1.3.21 | non publié |
1.3.22 | 12 octobre 2001 |
1.3.23 | 21 janvier 2002 |
1.3.24 | 22 mars 2002 |
1.3.25 | non publié |
1.3.26 | 18 juin 2002 |
1.3.27 | 3 octobre 2002 |
1.3.28 | 16 juillet 2003 |
1.3.29 | 29 octobre 2003 |
1.3.30 | non publié |
1.3.31 | 11 mai 2004 |
1.3.32 | non publié |
1.3.33 | 29 octobre 2004 |
1.3.34 | 18 octobre 2005 |
1.3.35 | 1 mai 2006 |
1.3.36 | 17 mai 2006 |
1.3.37 | 28 juillet 2006 |
1.3.38 | non publié |
1.3.39 | 7 septembre 2007 |
1.3.40 | non publié |
1.3.41 | 19 janvier 2008 |
1.3.42 | 2 février 2010 |
Apache 2
Apache 2.0
version | publication |
---|---|
2.0.0a1 | 10 mars 2000 |
2.0.0a2 | 31 mars 2000 |
2.0.0a3 | 28 avril 2000 |
2.0.0a4 | 7 juin 2000 |
2.0.0a5 | 4 août 2000 |
2.0.0a6 | 18 août 2000 |
2.0.0a7 | 8 octobre 2000 |
2.0.0a8 | 20 novembre 2000 |
2.0.0a9 | 12 décembre 2000 |
2.0.14 – 2.0.27 | non publié |
2.0.28 | 13 novembre 2001 |
2.0.29 – 2.0.31 | non publié |
2.0.32 | 16 février 2002 |
2.0.33 – 2.0.34 | non publié |
2.0.35 | 5 avril 2002 |
2.0.36 | 6 mai 2002 |
2.0.37 – 2.0.38 | non publié |
2.0.39 | 17 juin 2002 |
2.0.40 | 9 août 2002 |
2.0.41 | non publié |
2.0.42 | 24 septembre 2002 |
2.0.43 | 3 octobre 2002 |
2.0.44 | 20 janvier 2003 |
2.0.45 | 1 avril 2003 |
2.0.46 | 28 mai 2003 |
2.0.47 | 9 juillet 2003 |
2.0.48 | 29 octobre 2003 |
2.0.49 | 19 mars 2004 |
2.0.50 | 30 juin 2004 |
2.0.51 | 15 septembre 2004 |
2.0.52 | 28 septembre 2004 |
2.0.53 | 7 février 2005 |
2.0.54 | 17 avril 2005 |
2.0.55 | 16 octobre 2005 |
2.0.56 – 2.0.57 | non publié |
2.0.58 | 1 mai 2006 |
2.0.59 | 28 juillet 2006 |
2.0.60 | non publié |
2.0.61 | 7 septembre 2007 |
2.0.62 | non publié |
2.0.63 | 19 janvier 2008 |
2.0.64 | 19 octobre 2010 |
2.0.65 | 10 juillet 2013 |
Apache 2.2
version | publication |
---|---|
2.2.0 | 1 décembre 2005 |
2.2.1 | non publié |
2.2.2 | 1 mai 2006 |
2.2.3 | 28 juillet 2006 |
2.2.4 | 9 janvier 2007 |
2.2.5 | non publié |
2.2.6 | 7 septembre 2007 |
2.2.7 | non publié |
2.2.8 | 19 janvier 2008 |
2.2.9 | 14 juin 2008 |
2.2.10 | 14 octobre 2008 |
2.2.11 | 14 décembre 2008 |
2.2.12 | 28 juillet 2009 |
2.2.13 | 8 août 2009 |
2.2.14 | 3 octobre 2009 |
2.2.15 | 5 mars 2010 |
2.2.16 | 25 juillet 2010 |
2.2.17 | 18 octobre 2010 |
2.2.18 | 11 mai 2011 |
2.2.19 | 21 mai 2011 |
2.2.20 | 20 août 2011 |
2.2.21 | 13 septembre 2011 |
2.2.22 | 31 janvier 2012 |
2.2.23 | 13 septembre 2012 |
2.2.24 | 26 février 2013 |
2.2.25 | 10 juillet 2013 |
2.2.26 | 18 novembre 2013 |
2.2.27 | 26 mars 2014 |
2.2.29 | 3 septembre 2014 |
2.2.31 | 17 juillet 2015 |
2.2.32 | 13 janvier 2017 |
2.2.33 | non publié |
2.2.34 | 11 juillet 2017 |
Apache 2.3
version | publication |
---|---|
2.3.0-alpha – 2.3.3-alpha | non publié |
2.3.4-alpha | 8 décembre 2009 |
2.3.5-alpha | 26 janvier 2010 |
2.3.6-alpha | 17 juin 2010 |
2.3.7-alpha | non publié |
2.3.8-alpha | 31 août 2010 |
2.3.9-alpha | non publié |
2.3.10-alpha | 21 décembre 2010 |
2.3.11-bêta | 7 mars 2011 |
2.3.12-bêta | 23 mai 2011 |
2.3.13-bêta | non publié |
2.3.14-bêta | 9 août 2011 |
2.3.15-bêta | 15 novembre 2011 |
2.3.16-bêta | 20 décembre 2011 |
Apache 2.4
version | publication |
---|---|
2.4.0 | non publié |
2.4.1 | 17 février 2012 |
2.4.2 | 17 avril 2012 (Linux) 17 mai 2012 (Windows) |
2.4.3 | 21 août 2012 |
2.4.4 | 25 février 2013 |
2.4.5 | 11 juillet 2013 |
2.4.6 | 22. juillet 2013 |
2.4.7 | 25 novembre 2013 |
2.4.9 | 17 mars 2014 |
2.4.10 | 21 juillet 2014 |
2.4.12 | 29 janvier 2015 |
2.4.16 | 15 juillet 2015 |
2.4.17 | 13 octobre 2015 |
2.4.18 | 14 décembre 2015 |
2.4.20 | 11 avril 2016 |
2.4.21 | 16 juin 2016 |
2.4.22 | 20 juin 2016 |
2.4.23 | 5 juillet 2016 |
2.4.24 | 16 décembre 2016 |
2.4.25 | 20 décembre 2016 |
2.4.26 | 19 juin 2017 |
2.4.27 | 11 juillet 2017 |
2.4.28 | 5 octobre 2017 |
2.4.29 | 23 octobre 2017 |
2.4.33 | 26 mars 2018 |
2.4.34 | 16 juillet 2018 |
2.4.35 | 22 septembre 2018 |
2.4.36 | 10 octobre 2018 |
2.4.37 | 23 octobre 2018 |
2.4.38 | 17 janvier 2019 |
2.4.39 | 27 mars 2019 |
2.4.40 | 2 août 2019 |
2.4.41 | 14 août 2019 |
2.4.42 | 19 mars 2020 |
2.4.43 | 26 mars 2020 |
2.4.44 | 28 juillet 2020 |
2.4.45 | 29 juillet 2020 |
2.4.46 | 7 août 2020 |
2.4.47 | 22 avril 2021 |
2.4.48 | 17 mai 2021 |
2.4.49 | 15 septembre 2021 |
2.4.50 | 4 octobre 2021 |
2.4.51 | 7 octobre 2021 |
2.4.52 | 20 décembre 2021 |
2.4.53 | 14 mars 2022 |
2.4.54 | 8 juin 2022 |
modules
Le serveur Apache peut être étendu avec des soi-disant modules qui apportent certaines fonctions supplémentaires et commencent toujours par 'mod_' (par exemple mod_rewrite, mod_php7.0, mod_ssl). Il y a des modules entre autres. pour [16]
- SSL (mod_ssl pour OpenSSL , mod_gnutls pour GnuTLS )
- Intégration et utilisation de langages de script dynamiques (par exemple mod_php, mod_perl, mod_python)
- Prise en charge de protocoles supplémentaires ( WebDAV : mod_dav, mod_dav_fs, mod_dav_lock, mod_dav_repos )
- Authentification (mod_auth*)
- Transfert vers d'autres serveurs (mod_proxy)
- Demander la réécriture et le transfert ( mod rewrite ; ce dernier utilisant mod_proxy)
- Modifications des lignes d'en -tête (mod_header)
- Informations automatiques sur les types de fichiers (mod_mime, mod_mime_magic)
- Génération automatique de rapports d'état (mod_status)
module | fonction |
---|---|
mod_access_compat | Autorisation d'accès de groupe basée sur le nom d'hôte |
mod_actions | Exécute le script CGI en fonction du type MIME du contenu demandé |
mod_alias | URL de redirection |
mod_allowmethods | Interdit les méthodes HTTP individuelles (GET, HEAD, POST, PUT, DELETE, TRACE) |
mod_asis | Envoyer le fichier sans définir de nouveaux en -têtes HTTP |
mod_auth_basic | Authentification HTTP |
mod_auth_digest | Authentification avec hachage MD5 |
mod_auth_form | formulaires d'authentification |
mod_authn_anon | Autorise l'accès anonyme dans les zones authentifiées |
mod_authn_core | Module de base pour l'authentification |
mod_authn_dbd | Authentification des utilisateurs via une base de données SQL |
mod_authn_dbm | Authentification des utilisateurs via un fichier DBM |
mod_authn_file | Authentification des utilisateurs via des fichiers texte |
mod_authn_socache | Maintient un cache des autorisations d'accès |
mod_authnz_fcgi | Permet à une application d'autorisation FastCGI de gérer l'authentification et l'autorisation Apache httpd |
mod_authnz_ldap | Authentification des utilisateurs via LDAP |
mod_authz_core | Module de base pour les mécanismes d'authentification |
mod_authz_dbd | Authentification de groupe via SQL |
mod_authz_dbm | Authentification de groupe via DBM |
mod_authz_groupfile | Authentification de groupe via des fichiers texte |
mod_authz_host | Authentification de groupe basée sur le nom d'hôte |
mod_authz_owner | Authentification de la propriété du fichier |
mod_authz_user | Authentification d'utilisateur |
mod_autoindex | Affichage automatique du répertoire |
mod_buffer | Mise en mémoire tampon des demandes |
mod_cache | Filtre de mise en cache HTTP selon RFC 2616 |
mod_cache_disk | Stockage sur disque pour les filtres de mise en cache HTTP |
mod_cache_socache | Stockage basé sur le cache d'objets partagés (socache) pour le filtre de mise en cache HTTP |
mod_cern_meta | Sémantique des métadonnées du CERN |
mod_cgi | Exécution de scripts CGI |
mod_cgid | Exécution de scripts CGI via un démon externe |
mod_charset_lite | Spécifie un codage de caractères différent |
mod_data | URL de données selon RFC 2397 |
mod_dav | WebDAV |
mod_dav_fs | Module de système de fichiers pour WebDAV |
mod_dav_lock | Module de verrouillage pour WebDAV |
mod_dbd | Gère les connexions SQL |
mod dégonfler | Compresse le contenu avec Deflate avant la livraison |
mod_dialup | composer |
mod_dir | Affichage du répertoire des dossiers |
mod_dumpio | Vide toutes les E/S dans le journal des erreurs comme souhaité |
mod_écho | Serveur Echo à des fins de test |
mod_env | Change l'environnement |
mod_example_hooks | module d'exemple |
mod_expires | Génère les en- têtes HTTP Expires et Cache-Control |
mod_ext_filter | Transfère la réponse du serveur à un programme externe avant de la livrer |
mod_file_cache | Fichiers tampons en mémoire |
mod_filter | Filtres contextuels |
mod_headers | Ajustement des en-têtes HTTP |
mod_heartbeat | Envoie l'état du serveur au serveur proxy |
mod_heartmonitor | Surveiller les serveurs mod_heartbeat |
mod_ident | Recherches d'identité RFC 1413 |
mod_imagemap | images cliquables |
mod_include | Intégration côté serveur des documents HTML (Server Side Include) |
mod_info | informations sur le serveur |
mod_isapi | ISAPI (Apache pour Windows) |
mod_lbmethod_bybusyness | Pour mod_proxy_balancer |
mod_lbmethod_byrequests | Pour mod_proxy_balancer |
mod_lbmethod_bytraffic | Pour mod_proxy_balancer |
mod_lbmethod_heartbeat | Pour mod_proxy_balancer |
mod_ldap | LDAP |
mod_log_config | Journalisation des demandes |
mod_log_debug | journal de débogage |
mod_log_forensic | Journalisation médico-légale |
mod_logio | Enregistrement des octets d'entrée/sortie |
mod_lua | Lua - Crochets |
mod_macro | Prise en charge des macros pour les fichiers de configuration |
mod_mime | MIME |
mod_mime_magic | Détermination du MIME par Magic Byte |
mod_négociation | négociation de contenu |
mod_nw_ssl | Cryptage SSL pour NetWare |
mod_php | Exécution de scripts PHP |
mod_privileges | Privilèges Solaris |
proxy mod | Procuration |
mod_proxy_ajp | AJP pour mod_proxy |
mod_proxy_balancer | Équilibrage de charge pour mod_proxy |
mod_proxy_connect | Prise en charge des requêtes CONNECT pour mod_proxy |
mod_proxy_express | Prise en charge du proxy inverse dynamique pour mod_proxy |
mod_proxy_fcgi | Prise en charge de FastCGI pour mod_proxy |
mod_proxy_fdpass | prise en charge fdpass pour mod_proxy |
mod_proxy_ftp | Prise en charge FTP pour mod_proxy |
mod_proxy_html | Réécrire les liens HTML pour s'assurer qu'ils sont adressables à partir des réseaux des Clients dans un contexte de proxy |
mod_proxy_http | Prise en charge HTTP pour mod_proxy |
mod_proxy_scgi | Prise en charge de la passerelle SCGI pour mod_proxy |
mod_proxy_wstunnel | Prise en charge de WebSocket pour mod_proxy |
mod_ratelimit | limitation de la bande passante |
mod_reflector | Peut transformer un filtre de sortie en service HTTP |
mod_remoteip | Remplace l'adresse IP du client par une adresse IP de l'agent utilisateur |
mod_reqtimeout | Définit le délai d'expiration _ |
mod_request | Prise en charge des requêtes HTTP (requêtes) |
mod réécriture | moteur de réécriture |
mod_security | Module de sécurité ( pare- feu d'application Web ) |
mod_sed | Filtrer avec sed |
mod_session | prise en charge des séances |
mod_session_cookie | Sessions avec cookies |
mod_session_crypto | chiffrement de session |
mod_session_dbd | Sessions basées sur DBD/SQL |
mod_setenvif | Permet de définir des variables d'environnement en fonction de la demande |
mod_slotmem_plain | Fournisseur de mémoire partagée basée sur les slots |
mod_slotmem_shm | Fournisseur de mémoire partagée basée sur les slots |
mod_so | Prise en charge du chargement des bibliothèques de programmes |
mod_socache_dbm | Socache basé sur DBM |
mod_socache_dc | Socache basé sur Distcache |
mod_socache_memcache | Socache basé sur Memcache |
mod_socache_shmcb | socache basé sur shmcb |
mod_speling | Module de correction des fautes d'orthographe lors de la frappe |
mode ssl | Cryptographie utilisant SSL ou TLS |
mod_status | Informations sur l'activité et les performances du serveur |
mod_substitute | Permet la recherche et le remplacement dans la réponse du serveur |
mod_suexec | Exécuter des scripts CGI en tant qu'autre utilisateur (suEXEC) |
mod_unique_id | Fournit une variable d'environnement avec un identifiant unique pour chaque requête |
mod_unixd | Sécurité de base (requise) pour les plates-formes de la famille Unix. |
mod_userdir | Répertoires spécifiques à l'utilisateur |
mod_usertrack | Journalisation des flux de clics |
mod_version | Configuration dépendante de la version |
mod_vhost_alias | Configuration dynamique pour l'hébergement virtuel |
mod_watchdog | Exécuter des tâches périodiquement |
mod_xml2enc | Jeux de caractères étrangers pour les modules de filtrage libxml2 |
Voir également
liens web
- httpd.apache.org , site officiel (anglais)
- Manuel en ligne , multilingue
- Etude de sécurité du serveur web Apache. (PDF, 634 Ko) Office fédéral de la sécurité de l'information , novembre 2002, consulté le 29 janvier 2010 .
- Catalogue de liens sur le thème d'Apache sur curlie.org (anciennement DMOZ )
les détails
- ↑ www.apache.org . (consulté le 23 août 2016).
- ↑ downloads.apache.org .
- ↑ linuxdocs.org . (consulté le 23 août 2016).
- ↑ github.com . (consulté le 11 août 2017).
- ↑ Le projet Open Source apache sur Open Hub : Page Langues . Dans : OpenHub . (consulté le 26 septembre 2018).
- ↑ projets.apache.org . (consulté le 8 avril 2020).
- ↑ httpd.apache.org . (consulté le 7 avril 2016).
- ↑ www.apache.org . (consulté le 23 août 2016).
- ↑ Enquête sur les serveurs Web. Netcraft , Ltd. Récupéré le 13 avril 2016 .
- ↑ Pourquoi le nom « Apache » ? Dans : Questions fréquemment posées sur le serveur Apache. Apache Software Foundation, consulté le 3 novembre 2015 .
- ↑ FAQ Apache (première publication expérimentale). Dans : Groupes Google. Google Inc., 13 mai 1997, récupéré le 29 janvier 2010 (anglais).
- ↑ Mise à niveau vers 2.4 à partir de 2.2. Consulté le 14 janvier 2017 .
- ↑ Serveur HTTP Apache 2.4.43 publié. Dans : Serveur HTTP Apache. Apache Software Foundation, 1er avril 2020, récupéré le 27 mai 2020 .
- ↑ https://packages.ubuntu.com/bionic/apache2-doc
- ↑ Historique des versions d'Apache
- ↑ Index des modules - Serveur HTTP Apache. apache.org, consulté le 15 novembre 2014 .