Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| xampp [Le 10/10/2019, 11:22] – [XAMPP : un serveur web de développement facile] introduction jamaique | xampp [Le 02/06/2026, 09:02] (Version actuelle) – ancienne révision (Le 09/01/2024, 17:09) restaurée krodelabestiole | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag>programmation | + | {{tag>Bionic |
| - | ======= XAMPP : un serveur LAMP (Apache + MariaDB + PHP + Perl) complet | + | {{ : |
| + | ====== XAMPP : un serveur LAMP complet====== | ||
| - | <note important> | + | Le paquet open source **XAMPP** est un serveur LAMP complet |
| - | + | * un serveur HTTP [[:apache2|Apache | |
| - | Le paquet open source **XAMPP** est un serveur LAMP facile à installer | + | * une base de données [[:MariaDB]] avec [[: |
| - | {{ :: | + | * [[: |
| + | * [[:PHP]], | ||
| + | * Perl, | ||
| + | * et un serveur FTP : [[: | ||
| + | * et de nombreuses bibliothèques | ||
| + | | ||
| + | {{ : | ||
| 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. | 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 multi-plateforme | + | Il est multi-plateforme |
| Tout est installé de façon conjointe avec les emplacements et autorisations qui vont bien. | Tout est installé de façon conjointe avec les emplacements et autorisations qui vont bien. | ||
| - | < | + | < |
| - | XAMPP n' | + | |
| + | * XAMPP ne propose pas une configuration standard donc on trouvera moins de documentation et une communauté moins importante pour aider en cas de problème. La documentation officielle de XAMPP est en particulier [[https:// | ||
| + | * XAMPP se dit open source mais les seules sources disponibles simplement concernant Linux sont [[https:// | ||
| - | Pour un serveur de production définitif, mieux vaut [[:lamp|LAMP]], LLMP ou LEMP (qui s'installent via les dépôts), plus riches de possibilités et de réglages, en particulier | + | Dans ces conditions, mieux vaut généralement installer la pile [[: |
| - | + | ||
| - | Cependant, XAMPP est un serveur basé sur des valeurs sûres : | + | |
| - | * [[: | + | |
| - | * [[: | + | |
| - | * [[: | + | |
| - | * [[: | + | |
| - | * Perl, | + | |
| - | * [[: | + | |
| - | * et de nombreuses bibliothèques | + | |
| - | Il est donc possible de le modifier moyennant quelques " | + | |
| </ | </ | ||
| - | L' | + | <note important> |
| + | Cependant, le serveur XAMPP installe des valeurs sûres, celles décrites en introduction. | ||
| - | ===== Pré-requis ===== | + | Les sites qui fonctionnent sur XAMPP fonctionneront a priori avec n' |
| - | * Disposer des [[: | + | Si vous êtes curieux·euse, |
| - | * Disposer d'une connexion à Internet configurée | + | |
| - | ===== Installer et utiliser XAMPP ===== | + | Mais __vous en apprendrez davantage et serez assuré·e d'un bien meilleur niveau de sécurité en mettant en place un serveur LAMP et un accès [[: |
| + | </ | ||
| + | ===== Pré-requis | ||
| - | ==== Installation ==== | + | * Une connexion internet. |
| - | L' | + | |
| - | - Récupérez [[http:// | + | |
| + | ===== Installation ===== | ||
| - | -Allez dans un terminal (//en mode sudo//), rentrez cette commande | + | Tout XAMPP tient en un seul répertoire |
| + | Son installation est donc d'une extrême simplicité (de même que sa désinstallation = supprimer le répertoire **/ | ||
| - | -//Toujours en sudo//, lancez l' | + | Sur la page [[https://www.apachefriends.org/fr/index.html]], choisissez la version 32 ou 64 bits selon votre système |
| - | + | Modifiez les autorisations du programme d' | |
| - | -Et... C'est tout ! XAMPP est maintenant installé dans le répertoire /opt/lampp (voir plus bas pour l' | + | |
| - | ==== Sécurisation ==== | + | |
| - | XAMPP est prêt à être utilisé, mais n'est pas sécurisé. Un assistant de sécurisation vous permet de choisir les mots de passe et options de base permettant de sécuriser **sommairement** votre serveur de développement: | + | |
| - | + | ||
| - | S'il n'est pas obligatoire de lancer l' | + | |
| - | Répondre " | + | |
| - | < | + | |
| - | XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] **no**</ | + | |
| - | ==== Démarrer XAMPP ==== | + | |
| - | + | ||
| - | Pour démarrer XAMPP : | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | Vous verrez alors défiler un texte de ce type : | + | |
| < | < | ||
| - | Starting XAMPP for Linux * ... | + | cd / |
| - | XAMPP: Starting Apache with SSL (and PHP5)... | + | sudo chmod +x xampp-linux-*-installer.run |
| - | XAMPP: Another MySQL daemon is already running. | + | sudo ./ |
| - | XAMPP: Starting ProFTPD... | + | |
| - | XAMPP for Linux started. | + | |
| </ | </ | ||
| - | Sous Ubuntu/ | + | {{ : |
| - | Elle fait partie du package net-tools. Vous devez l' | + | |
| - | < | + | |
| - | + | ||
| - | Vous pouvez désormais accéder à votre serveur local avec l' | + | |
| - | Le nom utilisateur | + | Acceptez toutes les étapes en cliquant sur **Next** ; pour la dernière fenêtre, cliquez sur **Finish** -> le panneau |
| + | {{ : | ||
| - | ==== Charger Wordpress ou un site en cours ==== | + | Ouvrez l' |
| + | {{ : | ||
| - | Le répertoire web est /// | + | <note tip>Pour que Xampp se lance au démarrage, lancez |
| - | Placez vos pages web dans ce répertoire pour y accéder depuis l' | + | < |
| - | Il est cependant conseillé de ne pas mettre l' | + | sudo update-rc.d lampp defaults |
| - | Exemple ///opt/lampp/htdocs/wordpress/// l' | + | </code>< |
| - | Attention le dossier | + | Au redémarrage, |
| - | < | + | |
| - | sudo chmod -R 777 /opt/lampp/htdocs | + | |
| - | ou | + | |
| - | sudo chmod -R 777 / | + | |
| - | </ | + | |
| - | <note warning> | + | |
| - | la création, l' | + | |
| - | </ | + | |
| - | Pour que Xampp se lance au démarrage, il suffit d’exécuter les commandes suivantes dans un terminal: | ||
| - | < | + | ===== Configuration ===== |
| - | sudo ln -s / | + | |
| - | sudo ln -s / | + | |
| - | </ | + | |
| - | Elles ont pour effet d’inscrire le serveur respectivement dans les procédures de démarrage et d’arrêt du système. | + | ==== Aliases suggérés ==== |
| - | ==== Arrêter XAMPP ==== | + | Pour vous simplifier la vie, créez des aliases en éditant ou créant le fichier **~/ |
| - | Pour arrêter XAMPP, | + | < |
| - | <code> | + | # Alias pour permettre sudo [un_alias] |
| - | Un texte défile. XAMPP est arrêté. | + | alias sudo=' |
| - | ===== Raccourcir la commande ===== | + | # Aliases pour Xampp |
| - | Vous pouvez créer un [[: | + | alias lampp='/ |
| - | < | + | alias ctlampp=' |
| - | Dorénavant, | + | |
| - | *Pour démarrer le serveur : < | + | |
| - | *Pour redémarrer le serveur : < | + | |
| - | *Pour sécuriser le serveur : < | + | |
| - | *Pour arrêter le serveur : < | + | |
| - | *Pour accéder à la liste des options possibles : < | + | |
| - | Bien sur, vous pourrez toujours utiliser ces commandes avec /// | + | # Aliases pour proftp |
| - | + | alias ftpasswd='/ | |
| - | ===== Créer un lanceur dans Unity ===== | + | |
| - | Vous pouvez aussi créer un lanceur dans la barre de lancement de Unity. | + | |
| - | * Dans le répertoire caché **~/ | + | |
| - | * Avec un éditeur de texte (par ex. [[gedit|gedit]]), | + | |
| - | < | + | |
| - | [Desktop Entry] | + | |
| - | Version=1.0 | + | |
| - | Type=Application | + | |
| - | Terminal=Terminal | + | |
| - | Categories=GNOME; | + | |
| - | Exec=xterm -e 'sudo /opt/lampp/lampp start' | + | |
| - | Name=Xampp | + | |
| - | Comment= | + | |
| - | Icon=/opt/ | + | |
| - | + | ||
| - | X-Ayatana-Desktop-Shortcuts=Start; | + | |
| - | + | ||
| - | [Start Shortcut Group] | + | |
| - | Name=Start | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | OnlyShowIn=Unity | + | |
| - | + | ||
| - | [Restart Shortcut Group] | + | |
| - | Name=Restart | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | OnlyShowIn=Unity | + | |
| - | + | ||
| - | [Stop Shortcut Group] | + | |
| - | Name=Stop | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | OnlyShowIn=Unity | + | |
| - | </ | + | |
| - | + | ||
| - | Glisser le nouveau lanceur dans la barre de lanceurs Unity Launcher | + | |
| - | + | ||
| - | ===== Créer un lanceur dans Gnome Shell ===== | + | |
| - | Si vous utilisez [[gnome|Gnome 3]] (variante [[ubuntu_gnome|Ubuntu Gnome]] et variante officielle depuis la [[17.10|version 17.10]]), vous pouvez placer un lanceur dans la barre des tâches. | + | |
| - | * [[: | + | |
| - | * Avec un éditeur de texte (par ex. [[gedit|gedit]]), | + | |
| - | + | ||
| - | < | + | |
| - | [Desktop Entry] | + | |
| - | Version=1.0 | + | |
| - | Type=Application | + | |
| - | Terminal=Terminal | + | |
| - | Categories=GNOME; | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | Name=Xampp | + | |
| - | Comment= | + | |
| - | Icon=/ | + | |
| - | Actions=Start; | + | |
| - | + | ||
| - | X-Ayatana-Desktop-Shortcuts=Start; | + | |
| - | + | ||
| - | [Desktop Action Start] | + | |
| - | Name=Start | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | + | ||
| - | [Desktop Action Restart] | + | |
| - | Name=Restart | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | + | ||
| - | [Desktop Action Stop] | + | |
| - | Name=Stop | + | |
| - | Exec=xterm -e 'sudo / | + | |
| - | </ | + | |
| - | + | ||
| - | * Enregistrez le fichier ; | + | |
| - | * Ouvrez un [[terminal]], | + | |
| - | < | + | |
| - | cd ~ | + | |
| - | sudo mv xampp.desktop / | + | |
| </ | </ | ||
| - | Si vous avez créé votre fichier autre part qu'à la racine de votre dossier utilisateur (**/ | ||
| - | Vous pouvez aussi placer le fichier dans le dossier caché **~/.local/share/applications** si vous n'avez pas les droits [[root]] (remplacez dans ce cas la deuxième commande par **mv xampp.desktop ~/.local/share/applications**) | + | On obtient les raccourcis suivants : |
| - | | + | ^ Description ^ Raccourci ^ Effet | |
| - | ===== Créer un lien symbolique pour accéder à ses sites web ===== | + | ^ lampp | sudo lampp ... | -> sudo /opt/lampp/lampp ... | |
| + | ^ panneau de contrôle | sudo ctlampp | -> sudo /opt/lampp/ | ||
| + | ^ gérer les utilisateurs de proftpd | sudo ftpasswd ... | -> sudo / | ||
| - | Exemple | + | L' |
| + | < | ||
| - | < | + | Activez les aliases par : |
| + | < | ||
| - | $HOME équivaut à / | + | ==== Sécurisation ==== |
| - | < | + | Pour changer les mots de passe de **MySQL**, MySQL/**phpMyAdmin** et **FTP**, lancez : |
| + | sudo lampp security | ||
| - | Créer | + | qui donne le dialogue suivant pour créer des mots de passe : |
| + | XAMPP: | ||
| + | XAMPP: | ||
| + | XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] | ||
| + | XAMPP: | ||
| + | ... | ||
| + | XAMPP: | ||
| + | XAMPP: Do you want to set a password? [yes] yes | ||
| + | XAMPP: Password: | ||
| + | ... | ||
| + | XAMPP: | ||
| + | XAMPP: Do you want to set a password? [yes] yes | ||
| + | XAMPP: | ||
| + | XAMPP: Password: | ||
| + | ... | ||
| + | XAMPP: | ||
| + | XAMPP: Do you want to change the password? [yes] yes | ||
| + | XAMPP: Password: | ||
| + | ... | ||
| + | XAMPP: | ||
| - | Le caractere tilde ' | + | ==== Créer un lanceur sous Gnome ==== |
| - | < | + | |
| - | Création du lien symbolique du dossier projects au niveau | + | Si l' |
| + | ===== Utilisation===== | ||
| - | < | + | ==== Commandes ==== |
| - | Vérification du lien symbolique. | + | Avec les aliases suggérés plus haut, voici les commandes : |
| - | Placez-vous dans $HOME/www/projects et entrez la commande | + | * **Démarrer** le serveur :< |
| - | < | + | * **Redémarrer** le serveur :< |
| - | Ou | + | * **Sécuriser** le serveur |
| - | < | + | * **Arrêter** le serveur :< |
| + | * **Liste des options** possibles :< | ||
| + | * Lancer le **panneau de contrôle** :< | ||
| - | Vous devriez avoir : | + | Bien sûr, vous pourrez toujours utiliser ces commandes avec **/opt/lampp/lampp**. |
| - | < | + | |
| - | Et maintenant si vous allez sur http:// | + | ==== Essai ==== |
| - | ===== Lancer le Panneau de Contrôle graphique ===== | + | |
| - | Pour lancer | + | Depuis un PC du réseau, connectez-vous au PC sur lequel tourne |
| + | {{ :xampp:xampp-19.04-04.png? | ||
| - | < | + | ==== Mettre en place un site ==== |
| - | Vous pouvez aussi faire la commande suivante pour avoir une interface plus agréable et plus complète: | + | Pour mettre en place un site sur xampp, utilisez un client FTP (par exemple [[:filezilla|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 ==== |
| - | ===== Désinstaller XAMPP ===== | + | Rappelons que ce serveur tout-en-un n'a pas d'autre prétention que d'être un petit serveur local de travail. |
| - | Pour désinstaller XAMPP, il faut simplement supprimer le dossier | + | |
| - | < | + | |
| - | En effet, XAMPP tient en un seul dossier indépendant. | + | |
| - | ===== Astuces ===== | + | __Pour une mise en exploitation, |
| - | ==== Modifier le dossier racine du serveur | + | Pour les curieux, dans XAMPP, les réglages fournis sont : |
| - | Dans le ///opt/lampp/etc/httpd.conf// ligne 473-474, en sudo gedit modifier le : | + | * pour Apache |
| + | * 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**, | ||
| + | * racine : **/opt/lampp/htdocs** | ||
| + | * user : **daemon** (avec les mots de passe donnés à la phase de sécurisation) | ||
| + | * Umask : **022** | ||
| + | <note tip>__Si vous voulez__, vous pouvez modifier l' | ||
| - | <code># User home directories | + | <note important>Bien évidemment, |
| - | #Include etc/ | + | |
| + | Mais dans ce cas, le plus simple est **__d' | ||
| + | ===== Désinstallation ===== | ||
| - | en : | + | Pour supprimer cette application, |
| + | <note important> | ||
| - | < | + | Cela effacera tout vos sites en |
| - | Include etc/ | + | |
| - | Ensuite, dans ///opt/lampp/etc/ | + | |
| - | < | + | |
| - | # | + | |
| - | # Required module: mod_userdir | + | |
| - | # | + | **__Commencez par recopier en lieu sûr (en mode sudo...) le répertoire |
| - | # UserDir: The name of the directory that is appended onto a user's home | + | |
| - | # directory if a ~user request is received. Note that you must also set | + | |
| - | # the default access control for these directories, | + | |
| - | # | + | |
| - | UserDir public_html | + | |
| - | # | + | ===== Modifier |
| - | # Control access to UserDir directories. | + | |
| - | # for a site where these directories are restricted to read-only. | + | |
| - | # | + | |
| - | < | + | |
| - | AllowOverride FileInfo AuthConfig Limit Indexes | + | |
| - | Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec | + | |
| - | <Limit GET POST OPTIONS> | + | |
| - | Order allow, | + | |
| - | Allow from all | + | |
| - | </ | + | |
| - | < | + | |
| - | Order deny, | + | |
| - | Deny from all | + | |
| - | </ | + | |
| - | </ | + | |
| - | </ | + | |
| - | Celui-ci vous permettra d' | + | |
| - | Il est possible de changer | + | |
| - | Cependant, il est conseillé de laisser ce chemin. | + | |
| + | Une méthode simple est d' | ||
| + | / | ||
| - | Dans Firefox : | + | Désormais, toute référence à / |
| - | < | ||
| + | par Davis Maghulu Kabuyaya | ||
| + | ===== Voir aussi ===== | ||
| - | bonne route à tous ! | + | * **(fr)** [[https:// |
| - | (source: http://forum.ubuntu-fr.org/viewtopic.php?id=181007) | + | * **(en)** [[https://sourceforge.net/ |
| + | * **(fr)** [[http:// | ||
| - | ==== Localhost, | + | ---- |
| - | Pour résoudre ce problème, Va falloir suivre les directive de xampp et donc modifier le fichier httpd-xampp.conf. | + | // |
| + | //Basé sur [[www.apachefriends.org/ | ||
| - | Faites tout d' | ||
| - | / | ||
| - | |||
| - | Tapez : | ||
| - | sudo gedit / | ||
| - | |||
| - | Cherchez maintenant la ligne : | ||
| - | Directory "/ | ||
| - | |||
| - | Ajoutez : | ||
| - | < | ||
| - | |||
| - | Vous devriez avoir un truc comme celui là : | ||
| - | |||
| - | |||
| - | < | ||
| - | Order allow,deny | ||
| - | Allow from all | ||
| - | Require all granted </ | ||
| - | |||
| - | Redémarrez votre serveur : | ||
| - | < | ||
| - | |||
| - | Fini, normalement, | ||
| - | ok | ||
| - | (Source : [[http:// | ||
| - | |||
| - | Une autre petite contrainte pouvant arriver est le fait que la sécurité de XAMPP empêche d' | ||
| - | Pour remédier à cela, il suffit d' | ||
| - | < | ||
| - | #New XAMPP security concept | ||
| - | < | ||
| - | Require local | ||
| - | | ||
| - | </ | ||
| - | </ | ||
| - | Puis de commenter les 4 lignes de < | ||
| - | |||
| - | ===== Voir aussi ===== | ||
| - | |||
| - | * **(fr)** [[https:// | ||
| - | * **(en)** [[https:// | ||
| - | * **(fr)** [[http:// | ||
| - | ------ | ||
| - | |||
| - | // | ||
