Qu'est-ce que la pile LAMP ?
La pile LAMP est une combinaison d'un système d'exploitation et d'une pile de logiciels open source qui sont importants pour la configuration initiale d'un serveur. L'acronyme signifie Linux, Apache HTTP server, MySQL/MariaDB et PHP/Perl/Python. Cet article vous guidera à travers les étapes d'installation du serveur Apache HTTP, MySQL et PHP sur votre serveur en supposant que le système d'exploitation CentOS 7 y est déjà installé.
PrérequisAvant de suivre cet article, vous devez avoir un compte utilisateur non root configuré sur votre serveur.
Installation du serveur HTTP Apache
Apache ou Apache HTTP est le serveur Web le plus utilisé dans le monde, représentant actuellement plus de 50 % de part de marché. Pour installer Apache, suivez les étapes ci-dessous :
Étape 1 : Utilisez les commandes suivantes dans le terminal
sudo yum update
Une fois le processus de mise à jour terminé, installez le serveur HTTP Apache à l'aide de la commande.
sudo yum install httpd
Vous recevrez un message d'authentification, acceptez-le en entrant Y et continuez l'installation. Lancez ensuite votre serveur web installé sur le VPS en exécutant la commande
sudo systemctl start httpd.service
Étape 2 : Vérifiez l'installation en saisissant l'URL suivante sur votre navigateur Web.
http://server_ip_address/
Si le serveur Web a été installé correctement, votre navigateur Web vous dirigera vers la page Web qui ressemble à ce qui suit :
Installation de MySQL (MariaDB)
MariaDB est un logiciel de gestion de base de données open source qui est assez similaire à MySQL à bien des égards et qui est en fait meilleur que ce dernier dans divers aspects des performances. Idéalement, c'est une excellente alternative au très populaire MySQL. MariaDB est un fork de MySQL qui maintient une compatibilité élevée avec MySQL et fait partie intégrante de nombreuses installations de piles LEMP dans le monde.
L'installation de MariaDB sur un serveur est un processus assez simple et dans cet article, nous vous expliquerons comment installer et sécuriser MariaDB sur un serveur exécutant CentOS 7.
Étape 1 : Installer MariaDB
L'installation de MariaDB est aussi simple que d'exécuter une seule commande. Exécutez la commande ci-dessous dans le terminal pour installer.
sudo yum install mariadb-server
Un message d'invite apparaîtra avant la fin de l'installation qui ressemble à ce qui suit
Is this ok [y/d/N]:
Acceptez l'invite en saisissant y, puis appuyez sur Entrée.
Étape 2 : Démarrez MariaDB et configurez pour démarrer au démarrage
Maintenant que MariaDB a été installé sur votre serveur, il est temps de démarrer le service manuellement. Cela se fait en exécutant la commande suivante dans le terminal.
sudo systemctl start mariadb
Étant donné que cette commande n'affichera aucune sortie après son exécution, vous devez vérifier si le service a démarré. Vous pouvez vérifier l'état de MariaDB en exécutant la commande ci-dessous dans le terminal.
sudo systemctl status mariadb
Lorsque le service sera opérationnel, vous recevrez le résultat suivant :
Output: mariadb.service - MariaDB database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled) Active: active (running) since Mon 2016-12-19 06:47:18 UTC; 2min 25s ago Process: 9179 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS) Process: 9099 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS) Main PID: 9178 (mysqld_safe) CGroup: /system.slice/mariadb.service ├─9178 /bin/sh /usr/bin/mysqld_safe --basedir=/usr └─9336 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-fil... Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: The latest information about MariaDB is available at http://mariadb.org/. Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: You can find additional information about the MySQL part at: Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: http://dev.mysql.com Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: Support MariaDB development by buying support/new features from MariaDB Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: Corporation Ab. You can contact us about this at [email protected]. Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: Alternatively consider joining our community based development effort: Dec 19 06:47:16 Maria mariadb-prepare-db-dir[9099]: http://mariadb.com/kb/en/contributing-to-the-mariadb-project/ Dec 19 06:47:16 Maria mysqld_safe[9178]: 161219 06:47:16 mysqld_safe Logging to '/var/log/mariadb/mariadb.log'. Dec 19 06:47:16 Maria mysqld_safe[9178]: 161219 06:47:16 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql Dec 19 06:47:18 Maria systemd[1]: Started MariaDB database server.
Assurez-vous qu'il démarre également au démarrage en exécutant la commande suivante.
sudo systemctl enable mariadb
Output: Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
Étape 3 : Sécuriser MariaDB
Vous pouvez améliorer la sécurité du serveur MariaDB en modifiant des options telles que les connexions root à distance et les exemples d'utilisateurs. Pour implémenter cette étape de sécurité, utilisez cette commande.
sudo mysql_secure_installation
Une série d'invites apparaîtra une fois la commande exécutée. La première serait d'entrer le mot de passe root, puisqu'il n'y a pas de mot de passe root défini pour l'instant, appuyez sur Entrée et continuez.
Ensuite, il vous sera demandé si vous souhaitez définir un nouveau mot de passe root, acceptez-le et définissez un nouveau mot de passe root. Entrez ensuite Y dans toutes les invites qui suivent, ce qui terminera le processus.
Étape 4 : Vérifier l'installation
Pour vérifier si l'installation fonctionne correctement, exécutez cette commande.
mysqladmin -u root -p version
Output: Enter password: mysqladmin Ver 9.0 Distrib 5.5.52-MariaDB, for Linux on x86_64 Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Server version 5.5.52-MariaDB Protocol version 10 Connection Localhost via UNIX socket UNIX socket /var/lib/mysql/mysql.sock Uptime: 23 min 10 sec Threads: 1 Questions: 25 Slow queries: 0 Opens: 1 Flush tables: 2 Open tables: 27 Queries per second avg: 0.017
Installer PHP
PHP est un langage de script utilisé dans la conception Web pour créer des pages Web dynamiques.
Étape 1 : Utilisez la commande suivante dans le terminal
sudo yum install php php-mysql
Vous recevrez un message d'invite, entrez y et terminez l'installation.
Étape 2 : De nombreux modules PHP supplémentaires sont disponibles et peuvent être installés facilement. Même s'il s'agit d'une étape facultative, si vous souhaitez installer des modules supplémentaires, suivez les étapes ci-dessous.
Pour vérifier les modules disponibles, entrez la commande dans le terminal
yum search php-
Output: Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.fibergrid.in * extras: mirror.fibergrid.in * updates: mirror.fibergrid.in ========================================================================== N/S Matched: php- =========================================================================== php-bcmath.x86_64 : A module for PHP applications for using the bcmath library php-cli.x86_64 : Command-line interface for PHP php-common.x86_64 : Common files for PHP php-dba.x86_64 : A database abstraction layer module for PHP applications php-devel.x86_64 : Files needed for building PHP extensions php-embedded.x86_64 : PHP library for embedding in applications php-enchant.x86_64 : Human Language and Character Encoding Support php-fpm.x86_64 : PHP FastCGI Process Manager php-gd.x86_64 : A module for PHP applications for using the gd graphics library php-imap.x86_64 : A module for PHP applications that use IMAP php-intl.x86_64 : Internationalization extension for PHP applications php-ldap.x86_64 : A module for PHP applications that use LDAP php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling php-mysql.x86_64 : A module for PHP applications that use MySQL databases php-odbc.x86_64 : A module for PHP applications that use ODBC databases php-pdo.x86_64 : A database access abstraction module for PHP applications php-pear.noarch : PHP Extension and Application Repository framework php-pecl-apc.x86_64 : APC caches and optimizes PHP intermediate code php-pecl-apc-devel.i686 : APC developer files (header) php-pecl-apc-devel.x86_64 : APC developer files (header) php-pecl-memcache.x86_64 : Extension to work with the Memcached caching daemon php-pgsql.x86_64 : A PostgreSQL database module for PHP php-process.x86_64 : Modules for PHP script using system process interfaces php-pspell.x86_64 : A module for PHP applications for using pspell interfaces php-recode.x86_64 : A module for PHP applications for using the recode library php-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices php-soap.x86_64 : A module for PHP applications that use the SOAP protocol php-tidy.x86_64 : Standard PHP module provides tidy library support php-xml.x86_64 : A module for PHP applications which use XML php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol php-zts.x86_64 : Thread-safe PHP interpreter for use with the Apache HTTP Server Name and summary matches only, use "search all" for everything.
Pour connaître les détails du package ou du module, tapez ce qui suit
yum info module-name
Au lieu de module-name, entrez le nom du module correspondant. Par exemple,
yum info php-bcmath
Pour installer ce package, saisissez ce qui suit
sudo yum install php-bcmath
Vous pouvez installer plusieurs packages php en fonction de vos besoins.
Étape 3 : Pour vérifier si php est correctement installé dans votre VPS, créez un fichier en utilisant la commande ci-dessous
sudo vim /var/www/html/info.php
Appuyez sur la touche I pour éditer le fichier, entrez le contenu suivant dans le fichier puis enregistrez et quittez en appuyant sur ESC clé suivie de :wq! puis appuyez sur Entrée.
<?php phpinfo(); ?>
Redémarrage du serveur Web
La dernière étape de l'installation de la pile LAMP sur CentOS 7 consiste à redémarrer le serveur Apacheweb. Ceci est fait pour que le serveur Web reconnaisse les modifications apportées au serveur.
sudo systemctl restart httpd
Cela redémarrera le serveur immédiatement et voilà. Vous avez maintenant installé la pile LAMP sur votre serveur fonctionnant sous CentOS 7.
Vous pouvez vérifier l'installation de php en entrant l'URL suivante dans votre navigateur Web.
http://server_ip_address/info.php
Sortie :
Il est fortement recommandé de supprimer ce fichier php que vous avez créé car il pourrait fournir des données de serveur importantes à des utilisateurs non autorisés . Vous pouvez le faire en exécutant la commande ci-dessous dans votre terminal.
sudo rm /var/www/html/info.php