Comment installer la pile Linux, Apache, MySQL, PHP (LAMP) sur Ubuntu 14.04
Introduction
Une pile "LAMP" est un groupe de logiciels open source qui sont généralement installés ensemble pour permettre à un serveur d'héberger des sites Web dynamiques et des applications Web. Ce terme est en fait un acronyme qui représente le système d'exploitation Linux, avec le serveur web Apache. Les données du site sont stockées dans une base de données MySQL, et le contenu dynamique est traité par PHP.
Dans ce guide, nous allons installer une pile LAMP sur un Droplet Ubuntu 14.04. Ubuntu remplira notre première exigence : un système d'exploitation Linux.
Remarque : La pile LAMP peut être installée automatiquement sur votre Droplet en ajoutant ce script à ses données utilisateur lors de son lancement. Consultez ce didacticiel pour en savoir plus sur les données utilisateur Droplet.
Conditions préalables
Avant de commencer avec ce guide, vous devez avoir un compte d'utilisateur distinct et non root configuré sur votre serveur. Vous pouvez apprendre comment procéder en suivant les étapes 1 à 4 de la configuration initiale du serveur pour Ubuntu 14.04.
Étape 1 : Installer Apache
Le serveur Web Apache est actuellement le serveur Web le plus populaire au monde, ce qui en fait un excellent choix par défaut pour l'hébergement d'un site Web.
Nous pouvons installer Apache facilement en utilisant le gestionnaire de packages d'Ubuntu, apt
. Un gestionnaire de paquets nous permet d'installer la plupart des logiciels sans douleur à partir d'un référentiel maintenu par Ubuntu. Vous pouvez en savoir plus sur comment utiliser apt ici.
Pour nos besoins, nous pouvons commencer en tapant ces commandes :
sudo apt-get update sudo apt-get install apache2
Puisque nous utilisons une commande sudo
, ces opérations sont exécutées avec les privilèges root. Il vous demandera votre mot de passe d'utilisateur habituel pour vérifier vos intentions.
Ensuite, votre serveur Web est installé.
Vous pouvez faire une vérification ponctuelle tout de suite pour vérifier que tout s'est passé comme prévu en visitant l'adresse IP publique de votre serveur dans votre navigateur Web (voir la note sous la rubrique suivante pour savoir quelle est votre adresse IP publique si vous n'avez pas cette information déjà):
http:// votre_adresse_IP_serveur
Vous verrez la page Web Apache Ubuntu 14.04 par défaut, qui est là à des fins d'information et de test. Ça devrait ressembler a quelque chose comme ca:
Si vous voyez cette page, votre serveur Web est maintenant correctement installé.
Comment trouver l'adresse IP publique de votre serveur
Si vous ne connaissez pas l'adresse IP publique de votre serveur, vous pouvez la trouver de plusieurs façons. Il s'agit généralement de l'adresse que vous utilisez pour vous connecter à votre serveur via SSH.
À partir de la ligne de commande, vous pouvez le trouver de plusieurs façons. Tout d'abord, vous pouvez utiliser les outils iproute2
pour obtenir votre adresse en tapant ceci :
ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
Cela vous donnera une ou deux lignes en arrière. Ce sont toutes les deux des adresses correctes, mais votre ordinateur ne pourra peut-être en utiliser qu'une seule, alors n'hésitez pas à essayer chacune d'entre elles.
Une méthode alternative consiste à utiliser une partie extérieure pour vous dire comment it voit votre serveur. Vous pouvez le faire en demandant à un serveur spécifique quelle est votre adresse IP :
curl http://icanhazip.com
Quelle que soit la méthode que vous utilisez pour obtenir votre adresse IP, vous pouvez la saisir dans la barre d'adresse de votre navigateur Web pour accéder à votre serveur.
Étape 2 : Installez MySQL
Maintenant que notre serveur Web est opérationnel, il est temps d'installer MySQL. MySQL est un système de gestion de base de données. Fondamentalement, il organisera et fournira l'accès aux bases de données où notre site peut stocker des informations.
Encore une fois, nous pouvons utiliser apt
pour acquérir et installer notre logiciel. Cette fois, nous allons également installer d'autres packages "d'assistance" qui nous aideront à faire communiquer nos composants entre eux :
sudo apt-get install mysql-server php5-mysql
Remarque : dans ce cas, vous n'avez pas besoin d'exécuter sudo apt-get update
avant la commande. C'est parce que nous l'avons récemment exécuté dans les commandes ci-dessus pour installer Apache. L'index des paquets sur notre ordinateur devrait déjà être à jour.
Lors de l'installation, votre serveur vous demandera de sélectionner et de confirmer un mot de passe pour l'utilisateur "root" de MySQL. Il s'agit d'un compte administratif dans MySQL qui a des privilèges accrus. Considérez-le comme étant similaire au compte root du serveur lui-même (celui que vous configurez maintenant est cependant un compte spécifique à MySQL).
Une fois l'installation terminée, nous devons exécuter des commandes supplémentaires pour configurer notre environnement MySQL en toute sécurité.
Tout d'abord, nous devons dire à MySQL de créer sa structure de répertoires de base de données où il stockera ses informations. Vous pouvez le faire en tapant :
sudo mysql_install_db
Ensuite, nous voulons exécuter un script de sécurité simple qui supprimera certaines valeurs par défaut dangereuses et verrouillera un peu l'accès à notre système de base de données. Démarrez le script interactif en exécutant :
sudo mysql_secure_installation
Il vous sera demandé d'entrer le mot de passe que vous avez défini pour le compte root MySQL. Ensuite, il vous demandera si vous souhaitez modifier ce mot de passe. Si vous êtes satisfait de votre mot de passe actuel, tapez "n" pour "non" à l'invite.
Pour le reste des questions, vous devez simplement appuyer sur la touche "ENTRÉE" à chaque invite pour accepter les valeurs par défaut. Cela supprimera certains exemples d'utilisateurs et de bases de données, désactivera les connexions root à distance et chargera ces nouvelles règles afin que MySQL respecte immédiatement les modifications que nous avons apportées.
À ce stade, votre système de base de données est maintenant configuré et nous pouvons passer à autre chose.
Étape 3 : Installer PHP
PHP est le composant de notre configuration qui traitera le code pour afficher le contenu dynamique. Il peut exécuter des scripts, se connecter à nos bases de données MySQL pour obtenir des informations et transmettre le contenu traité à notre serveur Web pour qu'il l'affiche.
Nous pouvons à nouveau utiliser le système apt
pour installer nos composants. Nous allons également inclure des packages d'assistance :
sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
Cela devrait installer PHP sans aucun problème. Nous allons tester cela dans un instant.
Dans la plupart des cas, nous voudrons modifier la façon dont Apache sert les fichiers lorsqu'un répertoire est demandé. Actuellement, si un utilisateur demande un répertoire au serveur, Apache recherchera d'abord un fichier appelé index.html
. Nous voulons dire à notre serveur Web de préférer les fichiers PHP, nous allons donc faire en sorte qu'Apache recherche d'abord un fichier index.php
.
Pour ce faire, tapez cette commande pour ouvrir le fichier dir.conf
dans un éditeur de texte avec les privilèges root :
sudo nano /etc/apache2/mods-enabled/dir.conf
Il ressemblera à ceci:
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
Nous souhaitons déplacer le fichier d'index PHP surligné ci-dessus en première position après la spécification DirectoryIndex
, comme ceci :
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
Lorsque vous avez terminé, enregistrez et fermez le fichier en appuyant sur "CTRL-X". Vous devrez confirmer la sauvegarde en tapant "Y" puis appuyez sur "ENTER" pour confirmer l'emplacement de sauvegarde du fichier.
Après cela, nous devons redémarrer le serveur Web Apache pour que nos modifications soient reconnues. Vous pouvez le faire en tapant ceci :
sudo service apache2 restart
Installer les modules PHP
Pour améliorer les fonctionnalités de PHP, nous pouvons éventuellement installer des modules supplémentaires.
Pour voir les options disponibles pour les modules et bibliothèques PHP, vous pouvez saisir ceci dans votre système :
apt-cache search php5-
Les résultats sont tous les composants facultatifs que vous pouvez installer. Il vous donnera une brève description pour chacun :
php5-cgi - server-side, HTML-embedded scripting language (CGI binary) php5-cli - command-line interpreter for the php5 scripting language php5-common - Common files for packages built from the php5 source php5-curl - CURL module for php5 php5-dbg - Debug symbols for PHP5 php5-dev - Files for PHP5 module development php5-gd - GD module for php5 . . .
Pour obtenir plus d'informations sur ce que fait chaque module, vous pouvez soit effectuer une recherche sur Internet, soit consulter la longue description dans le package en tapant :
apt-cache affiche le nom_du_paquet
Il y aura beaucoup de sortie, avec un champ appelé Description-en
qui aura une explication plus longue de la fonctionnalité fournie par le module.
Par exemple, pour savoir ce que fait le module php5-cli
, on pourrait taper ceci :
apt-cache show php5-cli
En plus d'une grande quantité d'autres informations, vous trouverez quelque chose qui ressemble à ceci :
. . . SHA256: 91cfdbda65df65c9a4a5bd3478d6e7d3e92c53efcddf3436bbe9bbe27eca409d Description-en: command-line interpreter for the php5 scripting language This package provides the /usr/bin/php5 command interpreter, useful for testing PHP scripts from a shell or performing general shell scripting tasks. . The following extensions are built in: bcmath bz2 calendar Core ctype date dba dom ereg exif fileinfo filter ftp gettext hash iconv libxml mbstring mhash openssl pcntl pcre Phar posix Reflection session shmop SimpleXML soap sockets SPL standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlwriter zip zlib. . PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. Description-md5: f8450d3b28653dcf1a4615f3b1d4e347 Homepage: http://www.php.net/ . . .
Si, après des recherches, vous décidez d'installer un package, vous pouvez le faire en utilisant la commande apt-get install
comme nous l'avons fait pour nos autres logiciels.
Si nous décidions que php5-cli
est quelque chose dont nous avons besoin, nous pourrions taper :
sudo apt-get install php5-cli
Si vous souhaitez installer plusieurs modules, vous pouvez le faire en listant chacun d'eux, séparés par un espace, en suivant la commande apt-get install
, comme ceci :
sudo apt-get install package1 package2 …
À ce stade, votre pile LAMP est installée et configurée. Nous devrions quand même tester notre PHP.
Étape 4 : testez le traitement PHP sur votre serveur Web
Afin de tester que notre système est correctement configuré pour PHP, nous pouvons créer un script PHP très basique.
Nous appellerons ce script info.php
. Pour qu'Apache trouve le fichier et le serve correctement, il doit être enregistré dans un répertoire très spécifique, appelé "racine Web".
Dans Ubuntu 14.04, ce répertoire est situé dans /var/www/html/
. Nous pouvons créer le fichier à cet emplacement en tapant :
sudo nano /var/www/html/info.php
Cela ouvrira un fichier vierge. Nous voulons mettre le texte suivant, qui est du code PHP valide, à l'intérieur du fichier :
<?php phpinfo(); ?>
Lorsque vous avez terminé, enregistrez et fermez le fichier.
Nous pouvons maintenant tester si notre serveur Web peut afficher correctement le contenu généré par un script PHP. Pour essayer cela, il suffit de visiter cette page dans notre navigateur Web. Vous aurez à nouveau besoin de l'adresse IP publique de votre serveur.
L'adresse que vous souhaitez visiter sera :
http:// adresse_IP_votre_serveur /info.php
La page sur laquelle vous arrivez devrait ressembler à ceci :
Cette page vous donne essentiellement des informations sur votre serveur du point de vue de PHP. Il est utile pour le débogage et pour s'assurer que vos paramètres sont appliqués correctement.
Si cela a réussi, votre PHP fonctionne comme prévu.
Vous voudrez probablement supprimer ce fichier après ce test car il pourrait en fait donner des informations sur votre serveur à des utilisateurs non autorisés. Pour ce faire, vous pouvez taper ceci :
sudo rm /var/www/html/info.php
Vous pouvez toujours recréer cette page si vous avez besoin d'accéder à nouveau aux informations ultérieurement.
Conclusion
Maintenant que vous avez installé une pile LAMP, vous avez de nombreux choix pour ce qu'il faut faire ensuite. Fondamentalement, vous avez installé une plate-forme qui vous permettra d'installer la plupart des types de sites Web et de logiciels Web sur votre serveur.
Certaines options populaires sont :
- Installez Wordpress le système de gestion de contenu le plus populaire sur Internet
- Configurez PHPMyAdmin pour vous aider à gérer vos bases de données MySQL à partir d'un navigateur Web.
- En savoir plus sur MySQL pour gérer vos bases de données.
- Découvrez comment créer un certificat SSL pour sécuriser le trafic vers votre serveur Web.
- Découvrez comment utiliser SFTP pour transférer des fichiers vers et depuis votre serveur.
Remarque : Nous mettrons à jour les liens ci-dessus vers notre documentation 14.04 telle qu'elle est rédigée.