Ceci est une ancienne révision du document !



XAMPP : un serveur LAMP (Apache + MariaDB + PHP + Perl)

Le paquet open source XAMPP est un serveur LAMP complet et préconfiguré. Il contient :

  • un serveur HTTP Apache
  • une base de données MariaDB
  • PHP
  • Perl
  • et un serveur FTP : ProFTPd.

XAMPP est très pratique pour créer un serveur local de développement : il fournit au néophyte un serveur de test en quelques clics, sans avoir à choisir ni à connaître les différents services à installer.

Il est multiplateforme : il existe pour Linux, Windows et OS X

Tout est installé de façon conjointe avec les emplacements et autorisations qui vont bien.

Remarque préliminaire importante : ne demandez pas à XAMPP ce pour quoi il n'est pas fait !

XAMPP n'est pas un serveur de production mais un petit serveur local perso. Pour cet usage, il est parfait.

Pour un serveur de production définitif, mieux vaut LAMP qui s'installe via les dépôts, plus riche de possibilités et de réglages, en particulier pour la sécurité.

Cependant, le serveur XAMPP installe des valeurs sûres :

Les sites qui fonctionnent sur XAMPP fonctionneront donc sur LAMP : il suffit de copier le répertoire concerné et éventuellement de déplacer la base de données. A partir de là, vous pourrez mettre en place les réglages.

Si vous êtes curieux, vous pouvez cependant modifier XAMPP moyennant quelques "bidouilles" et une bonne connaissance de sa structure.

Mais vous en apprendrez davantage en mettant en place un serveur LAMP et un serveur FTP

  • Une connexion internet

Tout XAMPP tient en un seul répertoire : /opt/lampp.

Son installation est donc d'une extrême simplicité (de même que sa désinstallation = supprimer le répertoire /opt/lampp).

Sur la page https://www.apachefriends.org/fr/index.html, choisissez la version 32 ou 64 bits selon votre système d'exploitation Linux.

Modifiez les autorisations du programme d'installation et lancez-le en mode super-utilisateur :

cd répertoire/de/téléchargement/
sudo chmod +x xampp-linux-*-installer.run
sudo ./xampp-linux-*-installer.run

Acceptez toutes les étapes en cliquant sur Next ; pour la dernière fenêtre, cliquez sur Finish → le panneau de contrôle de XAMPP démarre :

Ouvrez l'onglet Manage Servers et cliquez sur Start All pour démarrer les serveurs :

Pour que Xampp se lance au démarrage, lancez dans un terminal :
sudo ln -s /opt/lampp/lampp /etc/init.d/lampp
sudo update-rc.d lampp defaults

Au redémarrage, XAMPP sera démarré.

Pour info, l'installation a créé l'arborescence :
tree /opt/lampp/ -d -L 1
/opt/lampp/
├── apache2
├── bin
├── build
├── cgi-bin
├── docs
├── error
├── etc
├── htdocs
├── icons
├── img
├── include
├── info
├── lib
├── libexec
├── licenses
├── logs
├── man
├── manual
├── modules
├── mysql
├── pear
├── php
├── phpmyadmin
├── proftpd
├── sbin
├── share
├── temp
└── var

28 directories

Le répertoire htdocs est la racine du serveur

Aliases suggérés

Pour vous simplifier la vie, créez des aliases en éditant ou créant le fichier ~/.bash_aliases pour y écrire :

~/.bash_aliases
# Alias pour permettre sudo [un_alias]
alias sudo='sudo '
 
# Aliases pour Xampp
alias lampp='/opt/lampp/lampp'
alias ctlampp='/opt/lampp/manager-linux-x64.run'
 
# Aliases pour proftp
alias ftpasswd='/opt/lampp/bin/ftpasswd'

On obtient les raccourcis suivants :

Description Raccourci Effet
lampp sudo lampp … → sudo /opt/lampp/lampp …
panneau de contrôle sudo ctlampp → sudo /opt/lampp/manager-linux-x64.run
gérer les utilisateurs de proftpd sudo ftpasswd … → sudo /opt/lampp/bin/ftpasswd …

L'alias sudo='sudo ' permet d'utiliser les autres aliases en sudo, comme avec

sudo lampp start

Activez les aliases par :

source ~/.bashrc

Sécurisation

Pour changer les mots de passe de MySQL, MySQL/phpMyAdmin et FTP, lancez :

sudo lampp security

qui donne le dialogue suivant pour créer des mots de passe :

XAMPP:  Quick security check...
XAMPP:  MySQL is accessable via network. 
XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] 
XAMPP:  Turned off.
...
XAMPP:  The MySQL/phpMyAdmin user pma has no password set!!! 
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Password: 
...
XAMPP:  MySQL has no root passwort set!!! 
XAMPP: Do you want to set a password? [yes] yes
XAMPP:  Write the password somewhere down to make sure you won't forget it!!! 
XAMPP: Password: 
...
XAMPP:  The FTP password for user 'daemon' is still set to 'xampp'. 
XAMPP: Do you want to change the password? [yes] yes
XAMPP: Password: 
...
XAMPP:  Done.

Créer un lanceur sous Gnome

Si l'installation n'a pas créé de lanceur, le mieux est d'utiliser MenuLibre pour en ajouter un.

Commandes

Avec les aliases suggérés plus haut, voici les commandes :

  • Démarrer le serveur :
    sudo lampp start
  • Redémarrer le serveur :
    sudo lampp restart
  • Sécuriser le serveur :
    sudo lampp security
  • Arrêter le serveur :
    sudo lampp stop
  • Liste des options possibles :
    sudo lampp
  • Lancer le panneau de contrôle :
    sudo ctlampp

Bien sûr, vous pourrez toujours utiliser ces commandes avec /opt/lampp/lampp.

Essai

Depuis un PC du réseau, connectez-vous au PC sur lequel tourne le serveur, par exemple http://192.168.0.7 :

Mettre en place un site

Pour mettre en place un site sur xampp, utilisez un client FTP (par exemple Client FTP : FileZilla) pour déposer le répertoire du site ou de son installateur sur la racine /opt/lampp/htdocs (utilisateur : daemon + mot de passe que vous avez défini à la sécurisation).

Remarques importantes

Rappelons que ce serveur tout-en-un n'a pas d'autre prétention que d'être un petit serveur local de travail.

Pour une mise en exploitation, mieux vaut se tourner vers un Serveur web - LAMP

Pour les curieux, dans XAMPP, les réglages fournis sont :

  • pour Apache (port 80) :
    • serveur : localhost
    • racine : /opt/lampp/htdocs
    • user : daemon (avec les mots de passe donnés à la phase de sécurisation)
    • Group : daemon
  • pour ProFTPd (port 21) :
    • serveur : ProFTPD, de type standalone
    • racine : /opt/lampp/htdocs
    • user : daemon (avec les mots de passe donnés à la phase de sécurisation)
    • Umask : 022
Si vous voulez, vous pouvez modifier l'utilisateur en www-data, changer le propriétaire de /opt/lampp/htdocs, mettre les permissions à 750 par exemple, etc. pour retrouver un serveur LAMP plus classique. Vous pouvez même utiliser des hôtes virtuels qui fonctionneront très bien.
Bien évidemment, gardez des permissions sûres pour ne pas ouvrir votre serveur de travail à tout le net !

Mais dans ce cas, le plus simple est d'installer tout de suite un serveur LAMP et un serveur FTP.

Pour supprimer cette application, il suffit de supprimer le répertoire /opt/lampp :

sudo rm -R /opt/lampp/

ainsi que l'éventuel raccourci sur le bureau.

Attention !

Cela effacera tout vos sites en /opt/lampp/htdocs … !

Commencez par recopier en lieu sûr (en mode sudo…) le répertoire /opt/lampp/htdocs !

Une méthode simple est d'ajouter un montage loop par une ligne dans le fichier /etc/fstab :

/home/USER/www	/opt/lampp/htdocs	none	bind	0	0

Désormais, toute référence à /opt/lampp/htdocs sera redirigée vers le répertoire voulu (à créer au besoin)

  • xampp.1571834555.txt.gz
  • Dernière modification: Le 23/10/2019, 14:42
  • par jamaique