Comment installer le serveur web Apache sur Ubuntu 18.04

Introduction

le serveur HTTP Apache est le serveur web le plus utilisé au monde. Il fournit de nombreuses fonctionnalités puissantes, y compris des modules chargeables dynamiquement, un support multimédia robuste et une intégration étendue avec d’autres logiciels populaires.

dans ce guide, nous expliquerons comment installer un serveur web Apache sur votre serveur Ubuntu 18.04.

prérequis

avant de commencer ce guide, vous devez avoir un utilisateur régulier non root avec des privilèges sudo configurés sur votre serveur., De plus, vous devrez activer un pare-feu de base pour bloquer les ports non essentiels. Vous pouvez apprendre à configurer un compte utilisateur régulier et à configurer un pare-feu pour votre serveur en suivant notre guide de configuration initiale du serveur pour Ubuntu 18.04.

Lorsque vous avez un compte, connectez-vous que votre utilisateur non-root pour commencer.

Étape 1 — Installation D’Apache

Apache est disponible dans les dépôts logiciels par défaut D’Ubuntu, ce qui permet de l’installer à l’aide d’outils de gestion de paquets conventionnels.,

commençons par mettre à jour l’index du paquet local pour refléter les dernières modifications en amont:

  • sudo apt update

ensuite, installez leapache2 package:

  • sudo apt install apache2

Après avoir confirmé l’installation,apt installera Apache et toutes les dépendances requises.

Étape 2 — réglage du pare-feu

avant de tester Apache, il est nécessaire de modifier les paramètres du pare-feu pour permettre un accès extérieur aux ports web par défaut., En supposant que vous avez suivi les instructions dans les conditions préalables, vous devriez avoir un pare-feu UFW configuré pour restreindre l’accès à votre serveur.

pendant l’installation, Apache s’enregistre auprès D’UFW pour fournir quelques profils d’application qui peuvent être utilisés pour activer ou désactiver L’accès à Apache via le pare-feu.,668e2bfd4″>

vous verrez une liste des profils d’application:

Output
Available applications: Apache Apache Full Apache Secure OpenSSH

comme vous pouvez le voir, il y a trois profils disponibles pour Apache:

  • Apache: ce profil n’ouvre que le port 80 (trafic web normal, non chiffré)
  • Apache Full: ce profil Apache secure: ce profil n’ouvre que le port 443 (trafic crypté TLS/SSL)
  • Il est recommandé d’activer le profil le plus restrictif qui autorisera toujours le trafic que vous avez configuré., Comme nous n’avons pas encore configuré SSL pour notre serveur dans ce guide, nous n’aurons qu’à autoriser le trafic sur le port 80:

    • sudo ufw allow 'Apache'

    Vous pouvez vérifier la modification en tapant:

    • sudo ufw status

    Vous devriez voir le trafic HTTP autorisé dans la sortie affichée:

    comme vous pouvez le voir, le profil serveur.

    Étape 3 — Vérification de votre Serveur Web

    À la fin du processus d’installation, Ubuntu 18.04 démarre Apache. Le serveur web devrait déjà être opérationnel.,

    Vérifiez avec le système d’initialisationsystemd pour vous assurer que le service est en cours d’exécution en tapant:

    • sudo systemctl status apache2

    comme vous pouvez le voir sur cette sortie, le service semble avoir démarré avec succès. Cependant, la meilleure façon de tester cela est de demander une page à Apache.

    Vous pouvez accéder à la page de destination Apache par défaut pour confirmer que le logiciel fonctionne correctement via votre adresse IP. Si vous ne connaissez pas l’adresse IP de votre serveur, vous pouvez l’obtenir de différentes manières à partir de la ligne de commande.,

    Essayez de taper à votre serveur de l’invite de commande:

    • hostname -I

    Vous recevrez quelques adresses séparées par des espaces. Vous pouvez essayer chacun dans votre navigateur web pour voir s’ils fonctionnent.,

    Une alternative est de taper ceci, ce qui devrait vous donner votre adresse IP publique vue d’un autre endroit sur internet:

    • curl -4 icanhazip.com

    lorsque vous avez l’adresse IP de votre serveur, entrez-la dans la barre d’adresse de votre navigateur:

    You should see the default Ubuntu 18.04 Apache web page:

    This page indicates that Apache is working correctly. It also includes some basic information about important Apache files and directory locations.

    Step 4 — Managing the Apache Process

    Now that you have your web server up and running, let’s go over some basic management commands.

    To stop your web server, type:

    • sudo systemctl stop apache2

pour arrêter puis redémarrer le service, tapez:

  • sudo systemctl restart apache2

Si vous effectuez simplement des modifications de configuration, Apache peut souvent recharger sans supprimer les connexions., Pour ce faire, utilisez cette commande:

  • sudo systemctl reload apache2

Par défaut, Apache est configuré pour démarrer automatiquement lorsque le serveur démarre. Si ce n'est pas ce que vous voulez désactiver ce comportement en tapant:

  • sudo systemctl disable apache2

Pour ré-activer le service pour le démarrage au démarrage, tapez:

  • sudo systemctl enable apache2

Apache devrait maintenant démarrer automatiquement lorsque le serveur démarre de nouveau.,

Étape 5 — Configuration des Hôtes Virtuels (recommandé)

lorsque vous utilisez le serveur web Apache, vous pouvez utiliser des hôtes virtuels (similaires aux blocs de serveur dans Nginx) pour encapsuler les détails de configuration et héberger plusieurs domaines à partir d'un seul serveur. Nous allons configurer un domaine appelé your_domain, mais vous devez le remplacer par votre propre nom de domaine. Pour en savoir plus sur la configuration d'un nom de domaine avec DigitalOcean, consultez notre Introduction au DNS DigitalOcean.

Apache sur Ubuntu 18.,04 a un bloc de serveur activé par défaut qui est configuré pour servir des documents à partir du répertoire /var/www/html. Bien que cela fonctionne bien pour un seul site, cela peut devenir difficile si vous hébergez plusieurs sites. Au lieu de modifier /var/www/html, créons une structure de répertoires dans /var/www pour un site your_domain, en laissant /var/www/html en place comme répertoire par défaut à servir si une demande client ne correspond à aucun autre site.,your_domain comme suit:

  • sudo mkdir /var/www/your_domain

ensuite, attribuez la propriété du répertoire avec la variable d'environnement $USER:

  • sudo chown -R $USER:$USER /var/www/your_domain

les permissions de vos racines web devraient être correctes si vous n'avez pas modifié votre unmask valeur, mais vous pouvez vous assurer en tapant:

  • sudo chmod -R 755 /var/www/your_domain

ensuite, créez un échantillon index.html page en utilisant nano ou votre éditeur préféré:

  • nano /var/www/your_domain/index.html

à l'intérieur, ajoutez l'exemple HTML suivant:

/var/www/your_domain/index.,html
<html> <head> <title>Welcome to Your_domain!</title> </head> <body> <h1>Success! The your_domain virtual host is working!</h1> </body></html>

Enregistrez et fermez le fichier lorsque vous avez terminé.

pour Qu'Apache puisse servir ce contenu, il est nécessaire de créer un fichier hôte virtuel avec les directives correctes. Au lieu de modifier directement le fichier de configuration par défaut situé à /etc/apache2/sites-available/000-default.conf, faisons-en un nouveau à /etc/apache2/sites-available/your_domain.conf:

  • sudo nano /etc/apache2/sites-available/your_domain.conf

collez le bloc de configuration suivant, qui est similaire au fichier par défaut, mais mis à jour pour notre nouveau répertoire et nom de domaine:

/etc/apache2/sites-disponibles/your_domain.,conf

notez que nous avons mis à jour leDocumentRoot vers notre nouveau répertoire et leServerAdmin vers un e-mail auquel l'administrateur du site your_domain peut accéder. Nous avons également ajouté deux directives: ServerName, qui établit le domaine de base qui doit correspondre à cette définition d'hôte virtuel, et ServerAlias, qui définit d'autres noms qui doivent correspondre comme s'ils étaient le nom de base.

Enregistrez et fermez le fichier lorsque vous avez terminé.,

activons le fichier avec l'outila2ensite:

  • sudo a2ensite your_domain.conf

désactivons le site par défaut défini dans000-default.conf:

  • sudo a2dissite 000-default.conf

ensuite, testons les erreurs de configuration:

  • sudo apache2ctl configtest

Vous devriez voir la sortie suivante:

Output
Syntax OK

redémarrez Apache pour implémenter vos modifications:

  • sudo systemctl restart apache2

Apache devrait maintenant servir votre nom de domaine., Vous pouvez tester cela en accédant à " , où vous devriez voir quelque chose comme ceci:

Étape 6 – Se Familiariser avec d'Importantes Apache Fichiers et Répertoires

Maintenant que vous savez comment gérer le service Apache lui-même, vous devriez prendre quelques minutes pour vous familiariser avec quelques répertoires et des fichiers.,

Content

  • /var/www/html: le contenu Web réel, qui par défaut ne se compose que de la page Apache par défaut que vous avez vue précédemment, est servi à partir du répertoire/var/www/html. Cela peut être modifié en modifiant les fichiers de configuration Apache.

Configuration du Serveur

  • /etc/apache2: Le répertoire de configuration d'Apache. Tous les fichiers de configuration Apache résident ici.
  • /etc/apache2/apache2.conf: le fichier de configuration principal D'Apache. Ceci peut être modifié pour apporter des modifications à la configuration globale d'Apache., Ce fichier est responsable du chargement de nombreux autres fichiers dans le répertoire de configuration.
  • /etc/apache2/ports.conf: Ce fichier spécifie les ports qu'Apache écoute sur. Par défaut, Apache écoute sur le port 80 et écoute en plus sur le port 443 lorsqu'un module fournissant des fonctionnalités SSL est activé.
  • /etc/apache2/sites-available/: le répertoire où les hôtes virtuels par site peuvent être stockés. Apache n'utilisera pas les fichiers de configuration trouvés dans ce répertoire à moins qu'ils ne soient liés au répertoire sites-enabled., En règle générale, toute la configuration du bloc de serveur est effectuée dans ce répertoire, puis activée en liant à l'autre répertoire avec la commande a2ensite.
  • /etc/apache2/sites-enabled/: répertoire où sont stockés les hôtes virtuels par site activés. Typiquement, ceux-ci sont créés en liant aux fichiers de configuration trouvés dans le répertoire sites-available avec le a2ensite. Apache lit les fichiers de configuration et les liens trouvés dans ce répertoire lorsqu'il démarre ou recharge pour compiler une configuration complète.,
  • /etc/apache2/conf-available/, /etc/apache2/conf-enabled/: Ces répertoires ont la même relation que le sites-available et sites-enabled répertoires, mais sont utilisés pour stocker des fragments de configuration qui n'appartiennent pas à un hôte virtuel. Les fichiers du répertoireconf-available peuvent être activés avec la commandea2enconf et désactivés avec la commandea2disconf.
  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/: Ces répertoires contiennent les disponibles et les modules activés, respectivement., Fichiers se terminant par .load contiennent des fragments de charger des modules spécifiques, tandis que les fichiers se terminant par .conf contiennent la configuration de ces modules. Les Modules peuvent être activés et désactivés à l'aide de la balise a2enmod et a2dismod commande.

journaux du serveur

  • /var/log/apache2/access.log: par défaut, chaque requête adressée à votre serveur web est enregistrée dans ce fichier journal, sauf si Apache est configuré pour faire autrement.
  • /var/log/apache2/error.log: Par défaut, toutes les erreurs sont enregistrées dans ce fichier., La directiveLogLevel dans la configuration Apache spécifie la quantité de détails que contiendront les journaux d'erreurs.

Conclusion

Maintenant que vous avez votre serveur web installé, vous disposez de nombreuses options pour le type de contenu que vous pouvez servir et les technologies que vous pouvez utiliser pour créer une expérience plus riche.

Si vous souhaitez créer une pile d'applications plus complète, vous pouvez consulter cet article sur la façon de configurer une pile LAMP sur Ubuntu 18.04.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *