LAMP

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Pile applicative
Composants Linux, Apache, MySQL/MariaDB, PHP
Voir aussi Apache · LDAP User authentication · Framework

LAMP désigne la pile applicative classique Linux + Apache + MySQL (ou MariaDB) + PHP, historiquement la base d'une grande partie des sites web dynamiques. La variante LEMP remplace Apache par Nginx ; les principes d'installation restent similaires.

Installation sur RHEL/CentOS

yum -y install httpd php mariadb mariadb-server php-mysqlnd php-xml
yum groupinstall "Development Tools"
systemctl enable httpd mariadb
systemctl start httpd mariadb

Sécuriser l'installation MariaDB fraîchement posée (retire les comptes anonymes, la base de test, force un mot de passe root) :

mysql_secure_installation

Vérifier que PHP fonctionne (fichier à retirer une fois le test fait, phpinfo() expose des détails de configuration qu'il vaut mieux ne pas laisser accessibles publiquement) :

vi /var/www/html/phpinfo.php
<?php echo phpinfo(); ?>

(à vérifier) : le paquet mysql-server historique a été remplacé par mariadb-server sur la plupart des distributions RHEL/CentOS récentes — MySQL proprement dit reste installable mais nécessite le dépôt officiel Oracle.

Installation sur Debian/Ubuntu

apt update
apt install apache2 mariadb-server php php-mysql libapache2-mod-php
systemctl enable apache2 mariadb
systemctl start apache2 mariadb
mysql_secure_installation

Sur Debian/Ubuntu, Apache écoute par défaut sur le port défini dans /etc/apache2/ports.conf, et la configuration des vhosts se trouve dans /etc/apache2/sites-available/ (voir Commandes apache pour a2ensite/a2enmod).

Même test de fonctionnement PHP :

vi /var/www/html/phpinfo.php
<?php echo phpinfo(); ?>

Nettoyage post-installation MySQL/MariaDB

Si mysql_secure_installation n'a pas été utilisé, faire le ménage manuellement :

mysql -u root -p
DROP DATABASE test;
DELETE FROM mysql.user WHERE user = ;
FLUSH PRIVILEGES;

Voir aussi

  • Apache — vue d'ensemble du service web
  • Nginx — alternative à Apache pour une pile LEMP
  • Framework — frameworks PHP/Python courants au-dessus d'une pile LAMP
  • LDAP User authentication — authentifier les visiteurs d'une appli LAMP via LDAP