Apache

Qu’est-ce qu’Apache?

 

Apache est un logiciel web gratuit et open source. Il héberge environ 40% des sites web dans le monde ! En fait, une grande majorité des sites que vous voyez sur WordPress utilise Apache comme logiciel de serveur web.  Il a été lancé en 1995 et est probablement le plus ancien et le meilleur serveur web du marché. 

Le plus intéressant à propos d'Apache, c’est qu'il est hautement personnalisable. Vous pouvez facilement le modifier en fonction de vos préférences, ce qui en fait l'option parfaite pour une série d'environnements différents avec leurs besoins respectifs, mais nous y reviendrons plus tard. 

Qu'est-ce qu'un serveur web ?

L'objectif principal d'un serveur web est de servir les sites web sur internet. Pour l'essentiel, il joue le rôle d'intermédiaire entre le serveur et la machine cliente. 

Ainsi, chaque fois que vous demandez quelque chose à un site web, son serveur récupère votre demande et la transmet au web. Pensez au personnel de service de votre restaurant préféré. Son travail consiste à prendre vos demandes et à les transmettre au chef ! C'est en quelque sorte ce que fait votre serveur web. 

De même, les serveurs web fonctionnent en traitant différents fichiers. Ceux-ci sont écrits dans une multitude de langages de programmation différents tels que Java, PHP et Python. En fin de compte, la tâche du serveur web consiste à transformer ces fichiers en HTML statique et à les faire avancer. 

En bref, un serveur web est en charge de toutes les communications qui se font sur le web. Il joue donc un rôle important.  

Comment fonctionne Apache ? 

Pour commencer, il faut savoir que même si on appelle Apache un serveur web, ce n'en est pas exactement un. Il s'agit plutôt d'un logiciel qui fonctionne sur le serveur. Il s'agit d'un logiciel multiplateforme, ce qui signifie qu'il est capable de fonctionner à la fois sur Windows et Unix. 

Apache établit une connexion entre le navigateur d'un utilisateur (par exemple Google) et un serveur. Il maintient la structure client-serveur en envoyant et en recevant des fichiers entre le client et le serveur. 

Prenons un exemple. Vous êtes sur le site d'une agence que vous envisagez d’engager pour votre prochain projet. Avant de faire votre choix, vous souhaitez vous renseigner sur l’agence, son histoire et sa philosophie. Vous cliquez donc sur la page “Qui sommes-nous”. 

Lorsque vous faites cela, votre navigateur envoie une requête à son serveur et Apache vous envoie une réponse avec tous les fichiers que vous avez demandés, y compris tout le texte de la page “Qui sommes-nous”, ainsi que les images ou les fichiers vidéo. La communication principale entre votre navigateur et le serveur se fait par le biais d'un protocole HTML, tandis qu'Apache veille à ce que cette communication reste transparente, fluide et sécurisée. 

Comme mentionné précédemment, Apache est un serveur hautement personnalisable. Il fonctionne selon une structure fonctionnelle basée sur des modules, ce qui signifie que les administrateurs du serveur peuvent accéder à des fonctionnalités supplémentaires s'ils le souhaitent. Apache possède de nombreux modules pour améliorer votre expérience du serveur web. Parmi eux, on retrouve notamment l'authentification par mot de passe, la réécriture de l'URL, la mise en cache et des modules de sécurité. 

  • Compression et décompression Gzip
  • Restriction de la bande passante
  • Scripts Perl, PHP, Lua
  • Traitement des fichiers statiques
  • Modules dynamiques chargeables
  • Auto-indexation
  • .htaccess
  • Compatible avec IPv6
  • Supports HTTP/2
  • Connexions FTP 
  • Répartition de la charge
  • Suivi des sessions
  • Réécriture d'URL
  • Géolocalisation sur base de l’adresse IP. 

 

À retenir

Pour de nombreux sites, Apache est un composant indispensable qui non seulement maintient l'aspect technique des choses mais facilite également une expérience utilisateur fluide. Si vous envisagez un jour de créer votre propre site web, vous devriez garder à l'esprit ce que vous avez appris aujourd'hui.