Qu'est-ce qu'Apache ? Serveur Web gratuit Apache HTTP Server

Table des matières:

Qu'est-ce qu'Apache ? Serveur Web gratuit Apache HTTP Server
Qu'est-ce qu'Apache ? Serveur Web gratuit Apache HTTP Server
Anonim

Apache est un serveur puissant dont le nom vient d'une expression anglaise associée au nom de la tribu Apache des Indiens d'Amérique du Nord. Parmi les utilisateurs russes, il a un nom commun "Apache". Il s'agit d'un logiciel open source avec une licence GPL. L'un de ses principaux avantages est son serveur multiplateforme, ce qui signifie qu'il peut fonctionner sur une variété de systèmes d'exploitation tout en conservant d'excellentes performances.

Depuis 1996, c'est le serveur le plus populaire au monde en raison de sa stabilité et de sa sécurité. Apache est développé par une communauté d'utilisateurs-développeurs, dirigée par l'Apache Software Foundation.

Histoire d'Apache

Histoire d'Apache
Histoire d'Apache

En mars 1989, Tim Berners Lee, un scientifique anglais travaillant au CERN (Suisse), a proposé une nouvelle façon de gérer l'énorme quantité d'informations dans les projets du CERN. A cette époque, personne ne savait ce qu'était Apache. Le développement initial du réseau de documents hyperliés, comme Ted Nelson les appelait en 1965, a conduit à la création du WWW.- le premier logiciel sorti en novembre 1990 sous le nom de World Wide Web, avec un navigateur web, une interface graphique et un éditeur WYSIWYG. Deux ans plus tard, il n'y avait qu'une trentaine d'entrées dans la liste des serveurs WWW, parmi lesquelles HTTPs NCSA.

La véritable histoire d'Apache commence en mars 1995 avec la sortie d'Apache 0.2 basé sur le serveur NCSA HTTPD 1.3. De nombreux utilisateurs souhaitent savoir ce qu'est Apache aujourd'hui et à quoi ressemblait le programme dans les premiers mois de son existence. C'était juste un ensemble de modifications appliquées au serveur NCSA. Ensuite, Robert Thau a publié Shambhala 0.1 avec des API pour les modules qui se sont avérés très réussis.

Les plus grandes étapes du projet ont été la pleine conformité avec la norme HTTP 1.1, qui a été incluse en avril 1997 en tant que version 1.2. Cette version incluait déjà la plate-forme Windows NT, lancée en juillet 1997. La combinaison de fichiers de configuration a été implémentée dans la version 1.3.3.

Apache Group est responsable de l'évolution du serveur Web et des décisions de développement spécifiques. Ce groupe doit être distingué des développeurs principaux - Core group. La nature volontaire de la plupart des développeurs rend peu probable qu'ils soient tous actifs dans Apache en même temps, donc le noyau est responsable de le maintenir opérationnel. En général, les décisions que les développeurs doivent prendre appartiennent au noyau et se limitent aux votes pour inclure le code. D'un autre côté, ils ont généralement un accès en écriture au référentiel CVS, ils agissent donc comme une passerelle vers le code, garantissant qu'il est correct et de bonne qualité.

Exigences minimales etavantages

Apache a été largement accepté sur le Web et est le serveur HTTP le plus utilisé depuis 1996. A atteint sa part de marché la plus élevée en 2005 lorsque le serveur était utilisé par 70 % des sites dans le monde. Ces dernières années, sa part de marché a diminué. Il est à noter que pour Apache, un tel déclin n'indique pas l'impopularité et la dégradation de la technologie.

Exigences minimales pour le fonctionnement:

  1. Processeur - Pentium.
  2. RAM - 64 Mo.
  3. OS-Microsoft Windows, GNU/Linux.
  4. Taille d'installation - 50 Mo.

Avantages:

  1. Conception modulaire.
  2. Open source.
  3. Conception multiplateforme.
  4. Extensibilité.
  5. Populaire – facilité d'obtenir de l'aide et de l'assistance.

Architecture serveur

Architecture serveur
Architecture serveur

Le serveur modulaire Apache se compose d'une section principale et de divers modules qui fournissent la plupart des fonctionnalités de base. Certains de ces modules:

  1. mod_ssl - communication sécurisée sur TLS;
  2. mod_rewrite - réécriture d'adresse, couramment utilisée pour convertir des pages dynamiques telles que php en pages statiques afin de tromper les moteurs de recherche quant à l'endroit où elles ont été conçues;
  3. mod_dav - Prise en charge du protocole WebDAV (RFC 2518);
  4. mod_deflate - l'algorithme de compression est transparent lorsque le contenu est envoyé au client;
  5. mod_auth_ldap - permet aux utilisateurs de s'authentifier auprès d'un serveur LDAP;
  6. mod_proxy_ajp -connecteur pour communiquer avec les pages dynamiques Jakarta Tomcat en Java (servlets et JSP).

Le serveur de base peut être étendu pour inclure des modules externes, notamment:

  • mod_cband - contrôle du trafic et limitation de la bande passante;
  • mod_perl - dynamique en Perl;
  • mod_php - dynamique en PHP;
  • mod_python - dynamique en Python;
  • mod_rexx - dynamique dans l'objet REXX et REXX;
  • mod_ruby - dynamique en Ruby;
  • mod asp dot net - dynamique dans Microsoft. NET;
  • mod_mono - dynamique à mono;
  • mod_security - filtrage au niveau de l'application pour la sécurité.

Configuration et sécurité

Paramétrage et sécurité
Paramétrage et sécurité

Afin de comprendre ce qu'est Apache en termes de sécurité, vous devez considérer sa configuration. La plupart de la configuration est effectuée dans les fichiers apache2.conf et httpd.conf, selon le système sur lequel le logiciel s'exécute. Toute modification de ce fichier nécessite un redémarrage du serveur ou une relecture forcée.

La licence logicielle sous laquelle le logiciel principal d'Apache est distribué est une caractéristique de l'histoire d'Apache HTTP Server et de la communauté open source. La licence permet la distribution de produits open source et fermés.

La Free Software Foundation ne considère pas la licence Apache comme compatible avec la version 2 de la licence publique générale GNU (GPL), dans laquelle le logiciel est sous licence et non intégré au logiciel. Il faut en tenir compte avantmettre en place un serveur web Apache distribué sous licence GPL. Cependant, la version 3 de la GPL inclut une disposition qui lui permet d'être compatible avec les licences qui ont des clauses d'indemnisation de brevet.

La plupart des failles de sécurité découvertes et corrigées ne peuvent être exploitées que par des utilisateurs locaux, et non à distance. Cependant, certains fonctionnent toujours à distance dans certaines situations. Ou s'ils sont utilisés par des utilisateurs locaux malveillants pour violer les accords d'hébergement partagé en utilisant PHP comme module du serveur Web Apache gratuit.

Vérifier le fonctionnement d'Apache

Vérification de la fonction Apache
Vérification de la fonction Apache

Pour vous assurer qu'Apache fonctionne correctement, ouvrez un navigateur Web et saisissez l'adresse suivante: https://localhost. Appuyez ensuite sur Entrée, une page blanche apparaît avec le message "Cela fonctionne", ce qui prouve que le serveur Web fonctionne correctement.

Apache vous permet de créer des configurations personnalisées à personnaliser et à adapter à vos besoins. Pour ce faire, recherchez le fichier http.conf dans C:appserv Apache2.2 conf. Il est sauvegardé pour éviter les erreurs d'exécution, puis il est ouvert avec n'importe quel éditeur et les lignes nécessaires sont modifiées.

Pour effectuer ces étapes correctement, vous devez avoir une bonne connaissance du worker Apache, car toute modification apportée sera répercutée sur les performances et le démarrage d'Apache. Grâce aux dernières recommandations, le serveur sera installé. Il fonctionnera dans une configuration de base qui vous permet de téléchargerpages ou applications réseau sur Internet.

Gestion des informations

Gestion de l'information
Gestion de l'information

Apache est le serveur web le plus utilisé, le leader avec le plus d'installations au monde, bien devant d'autres solutions comme Microsoft Internet Information Server (IIS). Ce projet est ouvert à l'utilisation car il est multi-plateforme, dispose de versions pour tous les principaux systèmes d'exploitation, est très fiable et se distingue par sa sécurité et ses performances.

L'ordinateur sur lequel ce logiciel est exécuté porte le même nom. Ceci est essentiel car il est chargé d'accepter les demandes de page provenant des visiteurs qui accèdent au site et de gérer leur livraison ou leur rejet conformément à la politique de sécurité établie. Bien que ce processus puisse sembler simple, il comprend de nombreux aspects et fonctions qui doivent être remplis:

  1. Performance des requêtes.
  2. Un grand nombre de requêtes HTTP, y compris le multitâche, peuvent laisser le service s'effondrer.
  3. Restrictions d'accès aux fichiers, contrôle de l'authentification des utilisateurs ou filtrage des requêtes selon leur origine.
  4. Gestion des erreurs sur les pages d'information des visiteurs et redirection vers des pages prédéfinies.
  5. Gérer les informations à transmettre en fonction de leur format et informer de manière adéquate le navigateur demandant la ressource spécifiée.
  6. Journal de gestion pour stocker les demandes reçues, les erreurs survenues eten général, toutes les informations qui sont enregistrées et analysées pour obtenir des statistiques d'accès au site.

Apache vous permet de configurer un hébergement virtuel basé sur des adresses IP ou des noms, c'est-à-dire d'avoir plusieurs sites Web sur un seul ordinateur.

Fichier apache2.conf

Sans aucun doute, apache2.conf est le fichier le plus important, car il définit le comportement général des pages Web et est également responsable de l'accès à divers modules qui étendent les fonctionnalités du serveur.

Il se trouve dans le répertoire /etc/apache2 et comme il s'agit d'un fichier texte, il peut être facilement modifié avec un éditeur de texte. Propriétés du fichier de configuration - Variables globales du serveur et extensions de fonctionnalité.

Les variables globales du serveur sont des variables qui définissent le fonctionnement global:

  1. Table des directives Apache. Le nom du serveur est indiqué par la variable ServerName, de sorte que toute redirection ou lien existant dans les documents HTML fonctionne correctement. La plupart des variables de configuration sont réparties entre d'autres petits fichiers stockés dans mods-available.
  2. .htaccess est un fichier texte caché qui vous permet de personnaliser le fonctionnement du serveur.
  3. "Apache" est un répertoire spécifique sans avoir à modifier le fichier de configuration principal apache2.conf. Lorsqu'un client Web demande un fichier au serveur, il regarde du répertoire racine au sous-répertoire contenant le.htaccess demandé et prend en compte les directives qu'il contient avant de faire la demande.

Principe.htaccess:

  1. Interdit de lister les fichiers dans le répertoire.
  2. Redirection du trafic Web.
  3. Configurer les pages d'erreur.
  4. Restreindre l'accès à certains fichiers.
  5. Refuser l'accès à des adresses IP spécifiques ou à des plages d'adresses IP.
  6. Étend les fonctionnalités liées à d'autres appels de module et fichiers de configuration. Toutes les directives associées à cet élément seront précédées du mot "Activer".

Installation du serveur Web Apache

Installation du serveur web Apache
Installation du serveur web Apache

Apache a été conçu à l'origine pour fonctionner avec la technologie PHP, mais il peut également fonctionner avec. NET sans problème, ce qui le rend plus efficace que IIS de Microsoft, qui est un collaborateur pour les serveurs utilisant IIS et fournit un support complet PHP sans avoir à modifier la configuration.

Pour installer et exécuter un serveur Web, vous devez d'abord le télécharger depuis le site officiel. Recherchez toujours la dernière version du logiciel disponible et vérifiez si elle sera identifiée comme binaire Win32, y compris OpenSSL.

La version dispose d'un système d'installation et de protection des données intégré. Une fois sélectionné, il est téléchargé sur le PC. Double-cliquez sur l'icône du fichier pour démarrer le processus, qui est simple car il est accompagné d'un assistant.

L'une des premières fenêtres qui fournira les informations nécessaires pour que le serveur Web puisse se connecter au réseau est la fenêtre d'information. Là, l'utilisateur remplit un court formulaire en ajoutant le nom de domaine du réseau, le nom du serveur et l'adresse e-mailadministrateur. Pour les deux premières options, choisissez localhost.

Ensuite, la fenêtre d'installation apparaîtra, où tous les composants disponibles sont répertoriés. Sélectionnez-les tous et vérifiez si le dossier c:appserv Apache2.2 existe. Ensuite, configurez le serveur Web Apache.

Moniteur Web dans la barre des tâches

Après l'installation d'Apache, assurez-vous que cela a été fait correctement. Pour ce faire, allez dans le menu "Démarrer" et recherchez l'option "Exécuter". Une fenêtre contextuelle apparaîtra dans laquelle vous entrez cmd, un écran contextuel du système apparaît. Pour vous assurer que l'utilisateur s'exécute en tant qu'administrateur, cliquez avec le bouton droit sur la fenêtre et sélectionnez "Exécuter en tant qu'administrateur".

Algorithme d'installation:

  1. Trouvez le dossier Apache bin dans la console Windows, pour cela, écrivez la phrase suivante dans la console - c: appserv Apache2.2? dans.
  2. Après avoir entré, appuyez sur Entrée et le composant système ressemblera à ceci - C: appserv Apache2.2 ? En>.
  3. Dans le dossier bin, tapez http:.exe -k install et appuyez sur Entrée.
  4. Un message similaire à ". Apache 2.2: service déjà installé" apparaîtra. Ce message vérifiera qu'Apache a bien été installé.

L'un des moyens les plus efficaces de vérifier si Apache fonctionne correctement est de vérifier si le moniteur d'application est actif. Il peut être vu sur la barre des tâches. S'il n'est pas actif, activez-le en allant dans le menu Démarrer, Tous les programmes et Apache http Server 2.2., cliquez sur Monitor Apache Server et activez-le.

Monitor est utile car il permet d'arrêter le serveur,mettez-le en pause et activez-le en tout confort sans passer par la fenêtre de la console, en cliquant simplement sur l'icône de la barre des tâches pour ouvrir la fenêtre de contrôle.

Conseils d'installation Linux

Conseils d'installation Linux
Conseils d'installation Linux

Si un utilisateur a un site Web et a besoin d'une plate-forme pour l'héberger, vous pouvez utiliser les services de l'un des hébergeurs ou essayer d'héberger vous-même votre site Web sur le serveur.

Algorithme d'installation:

  1. Téléchargez la dernière version stable d'Apache.
  2. Télécharger les fichiers source en fonction du système.
  3. Extraire les fichiers du logiciel.
  4. Après cela, les fichiers téléchargés devront être décompressés: gunzip -d httpd-2_0_NN.tar.gz; tar xvf
  5. Cela crée un nouveau répertoire dans le répertoire courant avec les fichiers source.
  6. Dès que les fichiers apparaissent, indiquez à la machine où trouver tous les originaux. La façon la plus simple de le faire est d'accepter toutes les valeurs par défaut et de taper simplement:./configure.
  7. Configurer Apache, à condition qu'il n'y ait eu aucun problème d'installation et de construction. L'utilisateur ajuste la configuration, ce qui revient à modifier le fichier httpd.conf. Il est généralement édité avec un éditeur de texte - vi PREFIX /conf/httpd.conf. Vous devez être root pour apporter des modifications.
  8. Vérifier le fonctionnement du serveur.

Application sur le World Wide Web

Application sur le World Wide Web
Application sur le World Wide Web

Apach est principalement utilisé pour soumettre des pages statiques et dynamiques au World Wide Web. De nombreuses applications sont conçues avecLes environnements d'implémentation Apache ou utiliseront les caractéristiques de ce serveur. Apach est un composant serveur de la plate-forme d'application populaire LAMP, ainsi que des langages de programmation MySQL et PHP, Perl, Python et Ruby, y compris la base de données Oracle et le serveur d'application IBM WebSphere. Mac OS X l'intègre dans son propre serveur Web et prend en charge les applications WebObjects.

Apache est utilisé pour de nombreuses autres tâches où le contenu doit être accessible de manière sécurisée et fiable. Par exemple, lors du partage de fichiers d'un ordinateur personnel vers Internet. Un utilisateur qui a installé Apache sur son bureau peut placer arbitrairement des fichiers dans la racine du document, d'où ils peuvent être partagés.

Les développeurs d'applications Web utilisent parfois une version locale d'Apache pour prévisualiser et tester le code pendant le développement. Microsoft Internet Information Services (IIS) est le principal concurrent d'Apache, ainsi que le serveur Web Sun Java System de Sun Microsystems et de nombreuses autres applications telles que le serveur Web Zeus.

Certains des plus grands sites Web au monde sont alimentés par Apache. Le frontal du moteur de recherche Google est basé sur une version modifiée de celui-ci appelée Google Web Server (GWS). De nombreux projets Wikipédia s'exécutent également sur des serveurs Apache.

Conseillé: