Comment installer Apache, mysql & php (lamp) sur CentOS 8

Comment installer Apache, mysql & php (lamp) sur CentOS 8

LAMPE est les acronymes de Linux, Apache, MySQL et PHP. Apache est le serveur Web pour servir des fichiers sur le protocole HTTP. MySQL est le serveur de base de données populaire. PHP est le langage de programmation utilisé pour développer des applications Web. En utilisant ces applications, nous pouvons créer un serveur Web à part entière. La façon la plus courante d'exécuter des applications PHP avec Apache est l'utilisation du module MOD_PHP. La bonne alternative est également d'utiliser PHP-FPM, qui présente plusieurs avantages à ce sujet. L'installation par défaut sur CentOS 8 utilise PHP-FPM pour traiter les fichiers PHP.

Ce tutoriel vous aidera à installer et à configurer la lampe (Linux, Apache, MySQL et PHP) sur CentOS 8 et RHEL 8 Linux Systems.

Lien utile:

  • Configuration, cryptant SSL avec Apache sur Centos 8
  • Comment configurer SFTP uniquement l'utilisateur sur CentOS 8

Conditions préalables

  • Machine CentOS 8 nouvellement installée.
  • Compléter la configuration du serveur initial
  • Accès à la coque avec les privilèges sudo

Étape 1 - Installez Apache

Les packages de serveur Web Apache sont disponibles dans le référentiel Appstream par défaut sur CentOS 8. Il vous suffit de mettre à jour le cache DNF et d'installer des packages à l'aide des commandes suivantes.

sudo dnf mise à jour sudo dnf installer httpd httpd-tools 

Le package MOD_SSL fournit la fonctionnalité pour utiliser un certificat SSL pour HTTP sécurisé. Après l'installation, activez le service HTTPD et démarrez.

sudo systemctl activer httpd.Service sudo systemctl start httpd.service 

Vérifiez maintenant l'état du service Apache:

Sudo Systemctl Status httpd.service 

Sortir:

● HTTPD.Service - Le serveur HTTP Apache chargé: chargé (/ usr / lib / systemd / system / httpd.service; activé; Vendor Preset: Désactivé) Drop-in: / USR / LIB / Systemd / System / Httpd.service.D └fiquesphp-fpm.Conf Active: Active (en cours d'exécution) depuis le samedi 2020-03-22 04:27:24 EDT; Il y a 5s Docs: Homme: Httpd.Service (8) PID principal: 8644 (HTTPD) Statut: "Démarré, écoute sur: Port 80" Tâches: 213 (Limite: 8918) Mémoire: 21.5m cgroup: / système.tranche / httpd.Service ├─8644 / usr / sbin / httpd -dforeground ├fique / sbin / httpd -dforeground 22 mars 04:27:23 tecadmin systemd [1]: Démarrage du serveur http Apache… 22 mars 04:27:24 Tecadmin Systemd [1]: Démarré le serveur http Apache. 22 mars 04:27:24 Tecadmin httpd [8644]: serveur configuré, écoute sur: port 80 

Étape 2 - Installez MySQL Server

Les derniers packages MySQL 8 sont disponibles sous le référentiel Appstrem sous Centos 8. Utilisez la commande suivante pour installer MySQL Server, y compris les packages requis sur votre système.

sudo dnf -y installer @mysql 

Après avoir terminé l'installation, activez le service MySQL pour démarrer automatiquement sur le démarrage du système. Commencez également le service manuellement pour la première fois.

sudo systemctl activer mysqld.Service sudo systemctl start mysqld.service 

Puis vérifiez l'état actuel du service à l'aide de la commande suivante:

Sudo Systemctl Status MySQLD.service 
● MySQLD.Service - Mysql 8.0 serveur de base de données chargé: chargé (/ usr / lib / systemd / system / mysqld.service; activé; Vendor Preset: Disabled) Active: Active (Running) depuis SAT 2020-03-22 02:49:33 EDT; 5min Processus il y a: 5841 execStartPost = / usr / libexec / mysql-ceck-upgrade (code = exite, status = 0 / réussi.Service (Code = Overt, status = 0 / Success) Processus: 5682 ExecStartPre = / USR / libexec / mysql-cueillette-socket (Code = EXIT, Status = 0 / Success) Pid principal: 5798 (MySQLD) Statut: "Server est Tâches opérationnelles ": 38 (limite: 8918) Mémoire: 442.1M CGroup: / Système.Slice / Mysqld.Service └fique.0 serveur de base de données… 22 mars 02:48:45 Tecadmin MySQL-Prepare-DB-DIR [5706]: Initialisation de la base de données MySQL 22 mars 02:49:33 Tecadmin Systemd [1]: Démarré MySQL 8.0 serveur de base de données. 

L'installation MySQL est terminée. Vous pouvez maintenant connecter le serveur MySQL sans aucun mot de passe, mais nous vous recommandons de sécuriser l'installation MySQL. Les packages MySQL fournissent la commande mysql_secure_installation pour appliquer la sécurité. Exécutez simplement la commande ci-dessous sur le terminal:

sudo mysql_secure_installation 

et suivre les instructions à l'écran. Vous trouverez ci-dessous les détails qui nécessitent une entrée utilisateur.

  • Appuyez sur Y | Y pour oui, toute autre touche pour non: y
  • Veuillez entrer 0 = bas, 1 = moyen et 2 = fort: 2
  • Nouveau mot de passe: [Entrez le mot de passe fort ici]
  • Ré-entrez le nouveau mot de passe: Entrez le mot de passe ici
  • Souhaitez-vous continuer le mot de passe fourni?(Appuyez sur y | y pour oui, toute autre touche pour non): y
  • Supprimer les utilisateurs anonymes? (Appuyez sur y | y pour oui, toute autre touche pour non): y
  • Interdire la connexion racine à distance? (Appuyez sur y | y pour oui, toute autre touche pour non): y
  • Supprimer la base de données de test et y accéder? (Appuyez sur y | y pour oui, toute autre touche pour non): y
  • Recharger les tables de privilège maintenant? (Appuyez sur y | y pour oui, toute autre touche pour non): y

Étape 3 - Installez PHP

Le référentiel REMI contient les derniers packages PHP pour le système CentOS 8 Linux. Donc, tout d'abord, vous devez ajouter le référentiel REMI à votre système. Exécutez simplement la commande suivante pour ajouter le référentiel.

sudo dnf installer dnf-utils http: // rpms.remirepo.Net / Enterprise / REMI-Release-8.RPM 

Ensuite, activez le module DNF requis pour l'installation de PHP. Ici, nous permettons le module pour installer PHP 7.4. Vous pouvez changer cela en php 7.3 ou php 7.2 selon vos exigences.

module sudo dnf réinitialiser le module dnf php sudo activer php: remi-7.4 

Une fois le référentiel activé sur votre système. Installez les packages PHP avec les modules PHP requis.

sudo dnf installer php php-mysqlnd 

Vous avez également besoin d'installer d'autres modules PHP requis selon vos exigences d'application. La commande ci-dessous installera quelques modules PHP fréquemment utilisés:

DNF Installer PHP-GD PHP-ZIP PHP-MCRYPT PHP-JSON PHP-XML PHP-GETTEXT PHP-CURL PHP-INTL 

Étape 4 - Créer Apache VirtualHost

Tous les packages requis pour l'environnement de lampe sont installés. Maintenant, créez l'hôte virtuel Apache. Par défaut, l'Apache utilise PHP-FPM pour traiter les fichiers PHP sur le système CentOS 8.

Créer et modifier le fichier de configuration de l'hôte virtuel dans l'éditeur de texte préféré:

sudo vim / etc / httpd / confre.d / tecadmin.exemple.filet.confli 

Ajouter le contenu suivant dans le fichier de configuration. Assurez-vous de modifier les paramètres requis.

ServerAdmin Admin @ Exemple.com documentroot / var / www / html servername tecadmin.exemple.Net Serveralias www.técadmin.exemple.Journaux Net ErrorLog / Tecadmin.error net.Journal des journaux Customlog / Tecadmin.accès net.journal combiné
12345678910 ServerAdmin Admin @ Exemple.com documentroot / var / www / html servername tecadmin.exemple.Net Serveralias www.técadmin.exemple.Journaux Net ErrorLog / Tecadmin.error net.Journal des journaux Customlog / Tecadmin.accès net.journal combiné

Enregistrez le fichier de configuration de l'hôte virtuel et rechargez Apache pour appliquer les modifications.

sudo systemctl redémarrer httpd.service 

Lien utile:

  • Configuration, cryptant SSL avec Apache sur Centos 8

Étape 5 - Autoriser les ports en pare-feu

Le serveur CentOS 8 Linux est prêt à servir l'application sur l'environnement de la lampe. Si votre système a l'installation de Firewalld Ans Active, vous devez autoriser les ports Apache. Cela permettra aux utilisateurs du réseau d'accéder à l'application Web à partir de systèmes distants.

Les commandes suivantes ouvriront les ports requis pour vous.

Sudo Firewall-Cmd --zone = public --permanent --add-Service = Http sudo Firewall-Cmd --zone = public --permanent --add-Service = https sudo firewall-cmd --reload 

Lien utile:

  • Qu'est-ce que Firewalld et comment implémenter sur Linux

Étape 6 - Configuration du test

Terminé. Pour tester l'environnement, créez un script PHP avec phpinfo () fonction. Placez ce fichier à la racine du document de votre serveur. Utilisez la commande ci-dessous pour le faire.

écho ""> / var / www / html / info.php 

Puis accéder aux informations.PHP à l'aide de l'adresse IP du serveur (pour VirtualHost par défaut) pour votre domaine configuré dans Apache VirtualHost.

http: // tecadmin.exemple.net / info.php 

Conclusion

Vous avez configuré avec succès un environnement de lampe sur votre système CentOS 8 ou RHEL 8 Linux. Ensuite, vous pouvez installer phpmyadmin sur votre système.