j’héberge mes propres sites Web depuis de nombreuses années maintenant. Depuis que je suis passé D’OS / 2 à Linux il y a plus de 20 ans, J’ai utilisé Apache comme logiciel serveur. Apache est solide, bien connu et assez facile à configurer pour une installation de base. Ce n’est pas vraiment beaucoup plus difficile à configurer pour une configuration plus complexe, comme plusieurs sites Web.
L’Installation et la configuration du serveur web Apache doivent être effectuées en tant que root. La configuration du pare-feu doit également être effectuée en tant que root., L’utilisation d’un navigateur pour afficher les résultats de ce travail doit être effectuée en tant qu’utilisateur non root. (J’utilise l’utilisateurstudent
sur mon serveur virtuel.)
Installation
Remarque: Cet article a été mis à jour en utilisant Fedora 33 avec Apache 2.4.46. Si vous utilisez une distribution différente ou une version différente de Fedora, vos commandes ainsi que les emplacements et le contenu des fichiers de configuration peuvent être différents. Cependant, les lignes de configuration que vous devez modifier sont les mêmes quelle que soit la distribution.
Le serveur web Apache est facile à installer., Avec une seule commande, vous pouvez l’installer et de toutes les dépendances nécessaires:
$ dnf install httpd
Tous les fichiers de configuration pour Apache est situé dans le /etc/httpd/conf
et /etc/httpd/conf.d
. Les données des sites Web que vous allez exécuter avec Apache se trouvent dans /var/www
par défaut, mais vous pouvez changer cela si vous le souhaitez.
Configuration
le fichier de configuration principal D’Apache est/etc/httpd/conf/httpd.conf
. Il contient beaucoup d’instructions de configuration qui n’ont pas besoin d’être modifiées pour une installation de base., En fait, seules quelques modifications doivent être apportées à ce fichier pour obtenir un site Web de base opérationnel. Le fichier est très volumineux, donc, plutôt que d’encombrer cet article avec beaucoup de choses inutiles, Je ne montrerai que les directives que vous devez modifier.
tout d’abord, prenez un peu de temps et parcourez le fichierhttpd.conf
pour vous y familiariser. Une des choses que j’aime à propos des versions Red Hat de la plupart des fichiers de configuration est le nombre de commentaires qui décrivent les différentes sections et directives de configuration dans les fichiers., Le fichierhttpd.conf
ne fait pas exception, car il est assez bien commenté. Utilisez ces commentaires pour comprendre ce que le fichier est en train de configurer.
le premier élément à modifier est l’instruction Listen
, qui définit l’adresse IP et le port sur lesquels Apache doit écouter les requêtes de page. À l’heure actuelle, il vous suffit de mettre ce site web à la disposition de la machine locale, utilisez donc l’adresse localhost
., La ligne devrait ressembler à ceci lorsque vous avez terminé:
Listen 127.0.0.1:80
Avec cette directive définie sur l’adresse IP dulocalhost
, Apache n’écoutera que les connexions de l’hôte local. Si vous souhaitez que le serveur web écoute les connexions des hôtes distants, vous devez utiliser l’adresse IP externe de l’hôte.
la directiveDocumentRoot
spécifie l’emplacement des fichiers HTML qui composent les pages du site web. Cette ligne n’a pas besoin d’être modifiée car elle pointe déjà vers l’emplacement standard., La ligne devrait ressembler à ceci:
DocumentRoot "/var/www/html"
Le RPM D’installation D’Apache crée l’arborescence de répertoires/var/www
. Si vous souhaitez modifier l’emplacement où les fichiers du site Web sont stockés, cet élément de configuration est utilisé pour le faire. Par exemple, vous pouvez utiliser un nom différent pour le sous-répertoire www
pour rendre l’identification du site Web plus explicite. Cela pourrait ressembler à ceci:
DocumentRoot "/var/mywebsite/html"
Ce sont les seules modifications de configuration Apache nécessaires pour créer un site Web simple., Pour ce petit exercice, une seule modification a été apportée au fichierhttpd.conf
—la directiveListen
. Tout le reste est déjà configuré pour produire un serveur web fonctionnel.
Une autre modification est cependant nécessaire: l’ouverture du port 80 dans notre pare-feu. J’utilise iptables comme pare-feu, donc je change /etc/sysconfig/iptables
pour ajouter une instruction qui permet le protocole HTTP. Le fichier entier ressemble à ceci:
la ligne que j’ai ajoutée est la troisième par le bas, ce qui permet le trafic entrant sur le port 80. Maintenant, je recharge la configuration iptables modifiée.,
# cd /etc/sysconfig/ ; iptables-restore iptables
Créer l’index.fichier html
le fichierindex.html
est le fichier par défaut qu’un serveur web servira lorsque vous accédez au site Web en utilisant uniquement le nom de domaine et non un nom de fichier HTML spécifique. Dans la balise /var/www/html
répertoire, créez un fichier avec le nom de index.html
. Ajoutez le contenu Hello World
. Vous n’avez pas besoin d’ajouter de balisage HTML pour que cela fonctionne. La seule tâche du serveur web est de servir un flux de données de texte, et le serveur n’a aucune idée de la date ou la façon de le rendre., Il transmet simplement le flux de données à l’hôte demandeur.
Après avoir enregistré le fichier, définissez la propriété apache.apache
.
# chown apache.apache index.html
le Démarrage d’Apache
Apache est très facile à démarrer. Les versions actuelles de Fedora utilisent systemd
. Exécutez les commandes suivantes pour démarrer et ensuite vérifier l’état du serveur:
Les commandes peuvent être différents sur votre serveur., Sur les systèmes Linux qui utilisent des scripts de démarrage SystemV, les commandes seraient:
Si vous avez un navigateur web comme Firefox ou Chrome sur votre hôte, vous pouvez utiliser L’URLlocalhost
sur la ligne URL du navigateur pour afficher votre page web, aussi simple que cela soit. Vous pouvez également utiliser un navigateur Web en mode texte comme Lynx pour afficher la page web. Tout d’abord, installez Lynx (s’il n’est pas déjà installé).
# dnf -y install lynx
Ensuite, utilisez la commande suivante pour afficher la page web.
# lynx localhost
Le résultat ressemble à ceci dans ma session de terminal., J’ai supprimé beaucoup d’espace vide sur la page.
ensuite, modifiez votre fichierindex.html
et ajoutez un peu de balisage HTML pour qu’il ressemble à ceci:
<h1>Hello World</h1>
actualisez maintenant le navigateur. Pour Lynx, utilisez la combinaison de touches Ctrl + R. Les résultats sont un peu différents. Le texte est en couleur, C’est ainsi que Lynx affiche les en-têtes si votre terminal prend en charge la couleur, et il est maintenant centré. Dans un navigateur GUI, le texte serait dans une grande police.
Partting thoughts
comme vous pouvez le voir dans ce petit exercice, il est facile de configurer un serveur web Apache., Les spécificités varient en fonction de votre distribution et de la version D’Apache fournie par cette distribution. Dans mon environnement, ce fut assez simple.
mais il y a plus car Apache est très flexible et puissant. Le mois prochain, je discuterai de l’hébergement de plusieurs sites Web en utilisant une seule instance D’Apache.
Cet article a été initialement publié en 2018 et a été mis à jour par l’éditeur.