GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Apache et PHP (pile LAMP) sur Rocky Linux/Centos 8

Le serveur HTTP Apache (Apache) est l'un des logiciels de serveur Web multiplateforme gratuits et open source les plus populaires, publié sous les termes de la licence Apache 2.0. Apache est populaire dans le cadre de la configuration LAMP, étant le A dans l'acronyme. La fonctionnalité du serveur apache peut être étendue avec les nombreux modules disponibles.

PHP est un langage de script à usage général orienté vers le développement Web. C'est l'un des langages de programmation populaires pour le Web. Les outils populaires tels que WordPress sont codés en php. Les grandes entreprises comme Facebook utilisent également fortement php.

Contenu associé
  • Comment installer et configurer PHP et Apache (pile LAMP) sur OpenSUSE Leap 15.3
  • Comment installer et configurer PHP et Nginx (LEMP) sur OpenSUSE Leap 15.3
  • Comment installer et configurer PHP et Apache (pile LAMP) sur Ubuntu 20.04
  • Comment installer et configurer PHP et Nginx (LEMP) sur Ubuntu 20.04
  • Comment installer et configurer PHP et Apache (pile LAMP) sur Debian 11
  • Comment installer et configurer PHP et Nginx (LEMP) sur Debian 11
  • Comment installer et configurer PHP et Nginx (LEMP) sur Rocky Linux/Alma Linux 8

Prérequis

Pour suivre ce guide, assurez-vous d'avoir les éléments suivants :

  • Un serveur Rocky Linux 8 mis à jour
  • Accès racine ou utilisateur avec accès sudo pouvant installer des packages et modifier des configurations
  • Accès Internet

Table des matières

  1. S'assurer que le serveur est à jour
  2. Installer PHP sur Rocky Linux 8
  3. Installation d'Apache sur Rocky Linux 8
  4. Configuration de l'hôte virtuel

1. S'assurer que le serveur est à jour

Avant de continuer, assurons-nous que nous avons les derniers packages dans notre système. Exécutez la commande suivante pour mettre à jour le système :

 $ sudo dnf -y update
Last metadata expiration check: 1:45:37 ago on Sun 29 Aug 2021 08:52:16 AM UTC.
Dependencies resolved.
Nothing to do.
Complete!

2. Installation de PHP dans Rocky Linux 8

Maintenant qu'Apache est configuré, nous devons installer PHP. Pour que les fichiers php soient servis, php doit être configuré dans le système. Dans ce guide, nous allons installer php 7.4.

PHP 7.4 n'est pas encore disponible dans les dépôts par défaut. Le référentiel Remi est le référentiel parfait pour installer php7.4. Remi repo est un référentiel YUM gratuit et stable principalement pour la pile PHP. Il contient des packages pour les dernières versions de PHP.

Pour activer Remi Repository dans notre serveur Centos :

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Confirmez que le référentiel remi a été installé et activé avec cette commande :

$ sudo dnf repolist
repo id                                 repo name
appstream                               CentOS Linux 8 - AppStream
baseos                                  CentOS Linux 8 - BaseOS
epel                                    Extra Packages for Enterprise Linux 8 - x86_64
epel-modular                            Extra Packages for Enterprise Linux Modular 8 - x86_64
extras                                  CentOS Linux 8 - Extras
remi-modular                            Remi's Modular repository for Enterprise Linux 8 - x86_64
remi-safe                               Safe Remi's RPM repository for Enterprise Linux 8 - x86_64

Vous devriez voir les dépôts remi dans le cadre de l'elist.

Maintenant que le référentiel a été installé, recherchons php. Utilisez cette commande :

$ sudo dnf module list php
Last metadata expiration check: 2:14:53 ago on Sun 29 Aug 2021 08:52:16 AM UTC.
CentOS Linux 8 - AppStream
Name                Stream                      Profiles                                 Summary
php                 7.2 [d]                     common [d], devel, minimal               PHP scripting language
php                 7.3                         common [d], devel, minimal               PHP scripting language
php                 7.4                         common [d], devel, minimal               PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name                Stream                      Profiles                                 Summary
php                 remi-7.2                    common [d], devel, minimal               PHP scripting language
php                 remi-7.3                    common [d], devel, minimal               PHP scripting language
php                 remi-7.4                 common [d], devel, minimal               PHP scripting language
php                 remi-8.0                    common [d], devel, minimal               PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

De la liste. nous pouvons voir que celui par défaut est 7.2. Effectuer une dnf install php installera le 7.2 dont nous ne voulons pas. Activons le 7.4 en utilisant cette commande :

sudo dnf module enable php:remi-7.4

Si, pour une raison quelconque, il échoue, vous pouvez réinitialiser le module existant avec cette commande :

sudo dnf module reset php

Maintenant que le dépôt a été activé, installons php avec cette commande :

sudo dnf install -y php php-common php-cli

Une fois réussi. confirmez la version installée avec cette commande :

$ php -v
PHP 7.4.23 (cli) (built: Aug 24 2021 16:33:30) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.23, Copyright (c), by Zend Technologies

Maintenant qu'Apache et php ont été installés avec succès, configurons-le pour qu'il serve du trafic

3. Installer Apache sur Rocky Linux 8

Maintenant que nous avons mis à jour nos packages, installons Apache. Apache est disponible dans les référentiels par défaut sous le package httpd . Vous pouvez vérifier les informations à ce sujet en utilisant la commande suivante :

$ sudo dnf info httpd
Last metadata expiration check: 1:48:56 ago on Sun 29 Aug 2021 08:52:16 AM UTC.
Installed Packages
Name         : httpd
Version      : 2.4.37
Release      : 39.module_el8.4.0+778+c970deab
Architecture : x86_64
Size         : 4.3 M
Source       : httpd-2.4.37-39.module_el8.4.0+778+c970deab.src.rpm
Repository   : @System
From repo    : appstream
Summary      : Apache HTTP Server
URL          : https://httpd.apache.org/
License      : ASL 2.0
Description  : The Apache HTTP Server is a powerful, efficient, and extensible
             : web server.

Installons-le en utilisant dnf :

sudo dnf install -y httpd

Démarrer et activer le service

Par défaut, le service n'est pas démarré. Commençons par cette commande :

sudo systemctl start httpd

Pour confirmer que cela fonctionne comme prévu, utilisez la commande status et assurez-vous qu'elle indique comme active comme indiqué ci-dessous :

$ sudo systemctl start httpd
$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           └─php-fpm.conf
   Active: active (running) since Sun 2021-08-29 10:43:52 UTC; 17s ago
     Docs: man:httpd.service(8)
 Main PID: 84446 (httpd)
   Status: "Running, listening on: port 80"
    Tasks: 213 (limit: 23800)
   Memory: 31.0M
   CGroup: /system.slice/httpd.service
           ├─84446 /usr/sbin/httpd -DFOREGROUND
           ├─84447 /usr/sbin/httpd -DFOREGROUND
           ├─84448 /usr/sbin/httpd -DFOREGROUND
           ├─84449 /usr/sbin/httpd -DFOREGROUND
           └─84450 /usr/sbin/httpd -DFOREGROUND

Aug 29 10:43:52 test-app-server systemd[1]: Starting The Apache HTTP Server...
Aug 29 10:43:52 test-app-server httpd[84446]: AH00558: httpd: Could not reliably determine the server's fully qualified doma>
Aug 29 10:43:52 test-app-server systemd[1]: Started The Apache HTTP Server.
Aug 29 10:43:52 test-app-server httpd[84446]: Server configured, listening on: port 80

Si vous avez activé un pare-feu, assurez-vous d'activer http et https trafic pour autoriser l'accès à apache.

Pour confirmer que php est installé et fonctionne correctement, veuillez visiter l'adresse IP du serveur dans le navigateur (http://server_ip). Si vous ne connaissez pas l'adresse IP du serveur, obtenez-la en utilisant cette commande dans votre terminal :

curl -4 icanhazip.com

Si tout va bien, vous devriez voir la page Apache comme ci-dessous :

4. Configuration des hôtes virtuels

Avec Apache, il est possible d'héberger plusieurs sites sur le même serveur sur lequel Apache s'exécute. Ceci peut toujours être réalisé en utilisant plusieurs domaines représentant chacun un site hébergé par le serveur.

Les hôtes virtuels Apache sont similaires aux blocs de serveur Nginx. Chaque hôte virtuel aura des détails de configuration pour un seul hôte. Vous pouvez avoir autant d'hôtes virtuels que vous le souhaitez.

Dans cet exemple, nous utiliserons le domaine site1.citizix.com pour l'hôte virtuel mais serons libres d'utiliser le domaine de votre choix. Veuillez noter que le DNS du domaine à utiliser doit déjà être configuré pour pointer vers l'adresse IP du serveur.
Confirmez cela avec :

dig -t A site1.citizix.com

Création d'un répertoire et d'exemples de contenu

La page par défaut d'Apache est configurée comme un hôte virtuel par défaut servant le contenu de /var/www/html . Il est recommandé de créer le répertoire de votre site dans le /var/www car c'est une bonne pratique de servir à partir de là.

Créons un répertoire pour notre site avec la commande suivante :

sudo mkdir /var/www/site1.citizix.com

Créons un simple index.php page à servir à partir de notre site. Vous aurez besoin de vim pour que cela fonctionne, sinon utilisez cette commande :

sudo dnf install -y vim

Modifier le fichier :

sudo vim /var/www/site1.citizix.com/index.php

Ajouter du contenu au fichier :

<?php phpinfo(); ?>

Enfin, assurons-nous que le apache l'utilisateur est propriétaire du répertoire du site :

sudo chown -R apache.apache /var/www/site1.citizix.com

Création d'un hôte virtuel

Les fichiers d'hôte virtuel Apache spécifient la configuration de chaque site et indiquent au serveur Web Apache comment répondre aux différentes demandes de domaine.

Les configurations Apache seront stockées dans le répertoire /etc/httpd/conf.d/ . Créons une configuration pour notre site :

sudo vim /etc/httpd/conf.d/site1.citizix.com.conf

Ajoutez le contenu suivant :

<VirtualHost *:80>
    ServerName site1.citizix.com
    ServerAlias site1.citizix.com
    DocumentRoot /var/www/site1.citizix.com
    DirectoryIndex index.php
    ErrorLog /var/log/httpd/site1.citizix.com.error.log
    CustomLog /var/log/httpd/site1.citizix.com.requests.log combined
</VirtualHost>

Cela indiquera à Apache ce qui suit :

  • ServerName et ServerAlias – nom de l'hôte à servir
  • DocumentRoot – où trouver directement la racine qui contient les documents Web accessibles au public
  • DirectoryIndex – Le fichier qu'apache servira lors de l'accès au site
  • ErrorLog – où stocker les journaux d'erreurs pour ce site
  • CustomLog – où stocker les journaux de requêtes pour ce site particulier

Enregistrez et fermez le fichier lorsque vous avez terminé

Tester l'hôte virtuel

Maintenant que la configuration est en place, nous devons tester que tout fonctionne comme prévu. Depuis que nous avons créé le index.php fichier ci-dessus, permet d'y accéder en allant à http://server_url/ . Dans mon cas, c'est http://site1.citizix.com/ . Vous devriez voir une page comme ci-dessous :

Conclusion

Dans ce guide, nous avons réussi à configurer Apache pour servir le trafic sur un serveur Rocky Linux 8.


Cent OS
  1. Comment installer et utiliser php Composer dans Rocky Linux/Centos 8

  2. Comment configurer Opencart sur Rocky Linux/Centos 8 avec Apache, PHP, Mysql (LAMP Stack)

  3. Comment installer et configurer PHP et Apache (pile LAMP) sur Ubuntu 20.04

  4. Comment installer et configurer PHP et Apache (pile LAMP) sur Debian 11

  5. Comment installer LAMP (Linux Apache MySQL et PHP) sur CentOS 6 avec phpMyAdmin et le cache APC

Comment installer la pile LAMP sur CentOS 8

Comment installer LAMP (Linux Apache, MariaDB, PHP) sur CentOS 7

Comment installer la pile LAMP sur CentOS 6

Comment installer la pile LAMP sur Rocky Linux 8

Comment installer une pile LAMP (Apache, MariaDB, PHP) sur CentOS 7

Comment installer LAMP sur Ubuntu 15.10 (Linux, Apache, MySQL et PHP)