Comment installer Apache avec l'hôte virtuel sur Centos 8
- 4175
- 586
- Noa Faure
Le Apache Webserver est un serveur Web HTTP OpenSource et populaire qui continue de profiter d'une part de marché massive dans l'industrie de l'hébergement. Il est expédié avec des charges de fonctionnalités, y compris des améliorations de modules, une prise en charge multi-protocole, une configuration simplifiée et une prise en charge multi-langues pour n'en citer que quelques-uns.
Lire aussi: Comment installer nginx sur Centos 8
Dans ce guide, nous vous guiderons à travers l'installation du Apache serveur Web sur Centos 8 et Rhel 8 avec un environnement hôte virtuel. Au moment de la rédaction de ce tutoriel, la dernière version d'Apache est Apache 2.2.43.
Installation du serveur Web Apache
Pour commencer, mettez d'abord à jour votre Centos 8 ou Rhel 8 Liste des packages système à l'aide de la commande DNF suivante.
$ sudo dnf mise à jour
Une fois la mise à jour terminée, installez Apache Webserver en exécutant la commande suivante.
$ sudo dnf installer httpd
Une fois installé, vous pouvez vérifier la version d'Apache en exécutant la commande rpm.
$ rpm -qi httpdVérifiez la version Apache
La commande imprime un éventail d'informations telles que la version, la date de sortie, la construction et l'architecture du package.
Pour démarrer le service Web Apache HTTP, exécutez la commande SystemCTL.
$ sudo systemctl start httpd
Pour confirmer si le service est en cours d'exécution, exécutez.
$ sudo systemctl status httpdVérifiez l'état du service Apache
De la sortie, le 'actifLe statut en vert indique que le serveur Web Apache est opérationnel.
Pour effacer les doutes que le serveur Web est en cours d'exécution, demandez une page de test d'Apache en parcourant l'adresse IP ou le nom de domaine de votre serveur comme indiqué.
http: // server-ip
Vous pouvez obtenir votre serveur IP en exécutant la commande ifconfig. Si votre serveur est hébergé sur le cloud, vous pouvez obtenir l'IP publique en exécutant la commande Curl.
$ curl ifconfig.moi ou $ curl -4 icanhazip.comTrouver l'adresse IP du serveur CentOS
Lorsque vous parcourez l'adresse IP du serveur, vous devriez afficher la page Web suivante.
Vérifier la page Web ApacheC'est une confirmation sûre que le serveur Web fonctionne.
Gérer Apache Webserver
Avec Apache installé et en cours d'exécution, vous pouvez utiliser le systemctl Outil d'inspection pour gérer Apache.
Par exemple, pour arrêter Apache, exécutez la commande:
$ sudo systemctl stop httpd
Pour recommencer le service, exécutez:
$ sudo systemctl start httpd
Si vous avez apporté des modifications à l'un de ses fichiers de configuration et que vous devez redémarrer pour appliquer les modifications, exécutez la commande:
$ sudo systemctl redémarrer httpd
Le redémarrage du service provoque généralement une perturbation du service. Une meilleure alternative consiste à simplement recharger sans aucune interruption avec la connexion.
$ sudo systemctl recharger httpd
Pour démarrer automatiquement le serveur Web Apache lors du démarrage ou du redémarrage d'exécuter la commande ci-dessous. Cela garantira qu'Apache commence automatiquement sans votre intervention.
$ sudo systemctl activer httpd
Si vous choisissez de ne pas démarrer automatiquement le service au démarrage, exécutez:
$ sudo systemctl Disable httpd
Configuration des hôtes virtuels Apache
Par défaut, le serveur Web Apache est configuré pour servir ou héberger un seul site Web. Si vous souhaitez héberger un seul site Web, cette étape n'est pas requise. Mais dans le cas où vous prévoyez d'héberger plusieurs domaines sur votre serveur, vous devez alors configurer les hôtes virtuels Apache.
Un hôte virtuel est un fichier séparé qui contient des configurations qui vous permettent de configurer un domaine distinct de celui par défaut. Pour ce guide, nous installerons un hôte virtuel pour le domaine crazytechgeek.Info.
L'hôte virtuel par défaut est situé au / var / www / html
annuaire. Cela ne fonctionne que pour un seul site. Pour créer un hôte virtuel séparé pour notre domaine, nous créerons une autre structure de répertoire dans le / var / www
Répertoire comme indiqué.
$ sudo mkdir -p / var / www / crazytechgeek.info / html
De plus, vous pouvez également créer un répertoire pour stocker les fichiers journaux.
$ sudo mkdir -p / var / www / crazytechgeek.info / journal
Ensuite, modifiez les autorisations de fichier Utiliser le $ Utilisateur
variable d'environnement comme indiqué.
$ sudo chown -r $ utilisateur: $ utilisateur / var / www / crazytechgeek.info / html
Ajustez également les autorisations du répertoire webroot comme indiqué.
$ sudo chmod -r 755 / var / www
Ensuite, créez un échantillon indice.html
fichier comme indiqué.
$ sudo vim / var / www / crazytechgeek.info / html / index.html
Frapper la lettre 'je'
sur le clavier et collez un exemple de contenu comme indiqué qui sera affiché sur le navigateur Web lors du test de l'hôte virtuel.
Bienvenue à Crazytechgeek.Info!Succès! Le crazytechgeek.L'hôte virtuel info est en place et fonctionne parfaitement!
Enregistrer et quitter le fichier de configuration.
Avec l'exemple de fichier d'index et le répertoire du site créé, vous pouvez maintenant procéder et créer le fichier hôte virtuel. Le fichier hôte virtuel contiendra la configuration du site de votre domaine et enseignera à Apache comment il répondra aux demandes des clients.
Le fichier hôte virtuel contiendra la configuration du site de votre domaine et enseignera à Apache comment il répondra aux demandes des clients. Mais en procédure, vous devez créer 2 répertoires: le les sites disponibles
et compatible avec les sites
répertoires.
Le fichier hôte virtuel sera stocké dans le les sites disponibles
répertoire tandis que le compatible avec les sites
Le répertoire contiendra le lien symbolique vers l'hôte virtuel.
Créez les deux répertoires comme indiqué.
$ sudo mkdir / etc / httpd / sites-disponible $ sudo mkdir / etc / httpd / sites compatible
Ensuite, modifiez le fichier de configuration principal du serveur Web Apache et instruisez Apache où localiser l'hôte virtuel dans le répertoire compatible sur les sites.
$ sudo vim / etc / httpd / conf / httpd.confli
Ajoutez la ligne comme indiqué à la toute fin du fichier de configuration.
Inclut les sites optionnels compatibles / *.confli
Sauvegarder et quitter.
Créez maintenant un fichier hôte virtuel comme indiqué:
$ sudo vim / etc / httpd / sites-disponible / crazytechgeek.Info
Collez le contenu ci-dessous et remplacez crazytechgeek.Info
avec votre propre nom de domaine.
Nom du serveur www.crazytechgeek.Info Serveurs crazytechgeek.Info Documentroot / var / www /crazytechgeek.Info/ html errorlog / var / www /crazytechgeek.Info/ log / erreur.log Customlog / var / www /crazytechgeek.Info/ log / requêtes.journal combiné
Enregistrer et quitter le fichier.
Activez maintenant le fichier hôte virtuel en créant un lien symbolique dans le compatible avec les sites
annuaire.
$ sudo ln -s / etc / httpd / sites-disponible / crazytechgeek.Info.conf / etc / httpd / sites compatible / crazytechgeek.Info.confli
Réglage des autorisations de Selinux pour les hôtes virtuels
Centos 8 et Rhel 8 navire avec Selinux qui est un module de sécurité pour fortifier la sécurité du système Linux. Depuis que vous avez configuré une coutume enregistrer Répertoire Dans l'étape précédente, vous devez mettre à jour certaines stratégies SELINUX pour demander au serveur Web Apache d'écrire dans le répertoire.
Il y a 2 approches pour ajuster les politiques de Sellinux Apache: ajuster les politiques d'ajustement universellement et les politiques d'un répertoire. Ce dernier est préféré car il est plus préféré.
Ajustement des politiques de Selinux sur un répertoire
Montage Selinux Les autorisations pour le répertoire de journal vous donne un contrôle absolu sur les politiques du serveur Web d'Apache. Cette méthode est assez longue et vous oblige à configurer manuellement le type de contexte pour les répertoires supplémentaires spécifiés dans le fichier de configuration de l'hôte virtuel.
Avant de démarrer, confirmez d'abord le type de contexte attribué au répertoire de journal par Selinux:
$ sudo ls -dlz / var / www / crazytechgeek.info / log /
La sortie doit être similaire à ce que nous avons ci-dessous.
Définir les stratégies SELINUX sur le répertoire du journal ApacheÀ partir de la sortie, le contexte défini est httpd_sys_content_t. Cela indique que le serveur Web ne peut lire que des fichiers dans le répertoire de journal. Vous devez changer ce contexte pour httpd_log_t Pour permettre à Apache de générer et d'ajouter des entrées de journal au répertoire.
Par conséquent, exécutez la commande:
$ sudo semanage fcontext -a -t httpd_log_t "/ var / www / crazytechgeek.info / log (/.*)?"
Si vous obtenez l'erreur ci-dessous «Sémanage: commande introuvable».
Cela implique que les packages qui prévoient sémanage la commande n'est pas installée. Pour corriger cette erreur, vous devez installer ces packages. Mais d'abord, vérifiez quels packages prévoient la commande SEMANAGE en exécutant:
$ sudo dnf whatprovides / usr / sbin / semanage
La sortie nous donne le package qui fournit un sémanage, qui est Policycoreutils-Python-Utils.
Installez maintenant le package comme indiqué à l'aide du gestionnaire de packages DNF.
$ sudo dnf installer la politique-cyccoreutils-python-utils
La commande de modification du contexte devrait maintenant fonctionner.
$ sudo semanage fcontext -a -t httpd_log_t "/ var / www / crazytechgeek.info / log (/.*)?"
Pour enregistrer les modifications et les rendre persistantes, émettez le Restorecon commande comme indiqué:
$ sudo restorecon -r -v / var / www / crazytechgeek.info / journal
Vous pouvez confirmer les modifications en exécutant à nouveau la commande:
$ sudo ls -dlz / var / www / crazytechgeek.info / log /Vérifiez le type de contexte SELINUX
Assurez-vous de noter que le type de contexte a changé pour httpd_log_t
Comme on le voit dans la sortie.
Redémarrez Apache pour les modifications à appliquer.
$ sudo systemctl redémarrer httpd
Vous pouvez maintenant confirmer si Apache enregistre les fichiers journaux dans le répertoire de journal en répertoriant son contenu comme indiqué:
$ ls -l / var / www / crazytechgeek.info / log /
Vous devriez pouvoir voir deux fichiers journaux comme indiqué: le journal d'erreur et demander des fichiers journaux.
Vérifiez les fichiers journaux ApacheTest de l'hôte virtuel Apache
Enfin, vous devez être sûr que le serveur Web Apache sert votre fichier hôte virtuel. Pour ce faire, ouvrez votre navigateur et accédez à l'adresse IP ou au nom de domaine de votre serveur:
http: // nom de domaineConsultez l'hôte virtuel Apache pour le site Web
Parfait! Cela indique que tout s'est bien passé et que notre hôte virtuel est servi comme prévu.
Conclusion
Dans ce guide, nous avons appris à installer le Apache serveur Web sur Centos 8 et Rhel 8 et aussi comment configurer un fichier hôte virtuel pour servir le contenu pour un domaine supplémentaire. N'hésitez pas à configurer plusieurs fichiers hôtes virtuels tels que vous jugez aptes à s'adapter aux domaines supplémentaires.
Si vous souhaitez configurer une pile d'hébergement complète, j'ai recommandé d'installer une pile de lampe sur Centos 8.
- « Comment télécharger et installer RHEL 8 gratuitement
- Qu'est-ce que PostgreSQL? Comment fonctionne postgresql? »