Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
xampp [Le 10/10/2019, 14:43]
jamaique [Installer et utiliser XAMPP]
xampp [Le 21/11/2024, 01:55] (Version actuelle)
41.188.105.244
Ligne 1: Ligne 1:
-{{tag>​programmation serveur vétuste}}+exo1.php
  
-======= XAMPP : un serveur LAMP (Apache + MariaDB + PHP + Perl) complet prêt à l'​emploi ======= +1.  ​&php 
- +2.  
-<note important>​En travaux : voir la refonte en cours [[:​utilisateurs:​jamaique:​xampp|XAMPP : un serveur LAMPP (Apache + MariaDB + PHP + Perl + FTP) tout-en-un prêt à l'​emploi]]</​note>​ +3$nom "Fatou Mbaye" ; 
- +4.  
-Le paquet open source **XAMPP** est un serveur LAMP facile à installer et à utiliser, contenant Apache, MariaDB, PHP et Perl, ainsi que le serveur FTP ProFTPd. +5echo "La valeur ​de /$nom est : Snom<br>"; 
-{{ ::​xampp:​xampp-19.04-08.png?​400 |}} +6  
- +7.$nombreMots - str_word_count ​($nom); 
-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. +8.  
- +9echo "​Le ​nombre ​de mots dans /$nom est : SnombreMots<br>*; 
-Il est multi-plateforme : il existe pour Linux, Windows et OS X +10.  
- +11.$nomSansEspaces = str_replace(*5*', ​Snom); 
-Tout est installé de façon conjointe avec les emplacements et autorisations qui vont bien. +12.  
- +13. echo "La chaine ​/Snom sans espaces est : $nomSansEspaces<br>*; 
-<note important>​ +14.  
-XAMPP n'est __pas fait pour un serveur de production mais pour créer sans peine un petit serveur local perso__. Pour cela, il est parfait. +15.$nomMajuscule ​strtoupper ​($nom) : 
- +16.  
-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 pour les problématiques de sécurité. +17echo "La chaine ​/$nom en majuscules ​est :$nomMajuscule<br>*; 
- +18
-Cependant, XAMPP est un serveur basé sur des valeurs sûres : +
-  * [[:​apache2|Apache 2]], +
-  * [[:​mariadb|MariaDB]] avec [[:​phpmyadmin|phpMyAdmin]],​ +
-  * [[:​sqlite|SQLite]] +
-  * [[:php|PHP]], +
-  * Perl, +
-  * [[:​proftpd|ProFTPD]] +
-  * et de nombreuses bibliothèques +
-Il est donc possible de le modifier moyennant quelques "​bidouilles"​ et une bonne connaissance de sa structure+
-</​note>​ +
- +
-L'​installation est guidée par un fichier *.run. +
- +
- +
-===== Pré-requis ====+
- +
-  * Une connexion internet +
- +
-===== Installation ===== +
- +
-L'​installation de XAMPP se veut d'une extrême simplicité+
- +
-Sur la page [[https://​www.apachefriends.org/​fr/​index.html]],​ choisir la version 32 ou 64 bits selon le système d'​exploitation Linux. +
- +
-Modifier les autorisations du programme d'​installation et lancer l'​installateur :<​code>​cd répertoire/​de/téléchargement/​ +
-sudo chmod +x xampp-linux-*-installer.run +
-sudo ./​xampp-linux-*-installer.run +
-</​code>​ +
-{{ :​xampp:​xampp-19.04-01.png?​400 |}} +
- +
-Cliquer sur **Next** : +
-{{ :​xampp:​xampp-19.04-02.png?​400 |}} +
- +
-Sélectionner les composants à installer et cliquer sur **Next** : +
-{{ :​xampp:​xampp-19.04-03.png?​400 |}} +
- +
-Cliquer sur **Next** : +
-{{ :​xampp:​xampp-19.04-04.png?​400 |}} +
- +
-Cliquer sur **Next** : +
-{{ :​xampp:​xampp-19.04-05.png?​400 |}} +
- +
-Cliquer sur **Next** : +
-{{ :​xampp:​xampp-19.04-06.png?​400 |}} +
- +
-Cliquer sur **Finish**. XAMPP démarre : +
-{{ :​xampp:​xampp-19.04-07.png?​400 |}} +
- +
-Cliquer sur **Start All** pour démarrer les serveurs : +
-{{ :​xampp:​xampp-19.04-08.png?​400 |}} +
- +
-===== Configuration ===== +
- +
- +
-==== 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: <code>sudo /​opt/​lampp/​lampp security</​code>​ +
- +
-S'il n'est pas obligatoire de lancer l'​assistant de sécurisation,​ c'est néanmoins fortement recommandé. +
-Répondre ​"no" à cette question : +
-<​code>​XAMPP:​ MySQL is accessable via network+
-XAMPP: Normaly that's not recommendedDo you want me to turn it off? [yes] **no**</​code>​ +
-===== Utilisation===== +
- +
-Pour démarrer XAMPP :  +
- +
-<​code>​sudo /​opt/​lampp/​lampp start</​code>​ +
- +
-Vous verrez alors défiler un texte de ce type : +
-<​code>​ +
-Starting XAMPP for Linux * ... +
-XAMPP: Starting Apache with SSL (and PHP5)... +
-XAMPP: Another MySQL daemon is already running+
-XAMPP: Starting ProFTPD... +
-XAMPP for Linux started. +
-</​code>​ +
-Sous Ubuntu/​Kubuntu 17.10 il semble manquer la commande netstat. +
-Elle fait partie du package net-tools. Vous devez l'​installer ​ : +
-<​code>​sudo apt-get install net-tools</​code>​ +
-  +
-Vous pouvez désormais accéder à votre serveur local avec l'​adresse [[http://​localhost/​]] dans la barre d'​adresse de votre navigateur Internet. ​  +
- +
-Le nom utilisateur pour accéder au FTP est "nobody"​ et le mot de passe dépend de ce que vous avez indiqué à la sécurisation (le mot de passe par défaut est "​lampp"​). +
- +
-==== Charger Wordpress ou un site en cours ==== +
- +
-Le répertoire web est ///​opt/​lampp/​htdocs//​ +
-Placez vos pages web dans ce répertoire pour y accéder depuis l'​adresse [[http://​localhost/​]].  +
-Il est cependant conseillé ​de ne pas mettre l'​ensemble des fichiers de Wordpress directement sous la racine htdocs mais dans un répertoire à part : +
-Exemple ​///​opt/​lampp/​htdocs/​wordpress///​ l'​adresse pour accéder à vos pages sera alors [[http://​localhost/​wordpress/​]],​ il sera ensuite possible de configurer wordpress pour modifier vos permaliens. +
- +
-Attention le dossier ​ "​htdocs"​ ou votre répertoire d'​installation ne sera accessible en lecture et en écriture que si vous accordez les privilèges avec ces commandes : \\ +
-<​code>​ +
-sudo chmod -R 777 /​opt/​lampp/​htdocs +
-ou +
-sudo chmod -R 777 /​opt/​lampp/​htdocs/​repertoire installation +
-</​code>​ +
-<note warning>​**C'​est une aberration de mettre tous les droits sur des fichiers (777) ou dossiers particulièrement dans les dossiers systèmes. +
-la création, l'​utilisation d'un groupe voire le déport des dossiers des sites avec des liens est plus adapté.** +
-</​note>​ +
- +
-Pour que Xampp se lance au démarrage, il suffit d’exécuter les commandes suivantes dans un terminal: +
- +
-<code> +
-sudo ln -s /​opt/​lampp/​lampp /​etc/​rc2.d/​S99lampp +
-sudo ln -s /​opt/​lampp/​lampp /​etc/​rc1.d/​K02lampp +
-</​code>​ +
- +
-Elles ont pour effet d’inscrire le serveur respectivement dans les procédures de démarrage et d’arrêt du système. +
- +
-==== Arrêter XAMPP ==== +
-Pour arrêter XAMPP, vous devrez saisir, dans un terminal, la commande suivante: +
-<​code>​sudo /​opt/​lampp/​lampp stop</​code>​ +
-Un texte défile. XAMPP est arrêté. +
- +
-===== Raccourcir la commande ===== +
-Vous pouvez créer un [[:​glossaire#​liens_symboliques_ou_logiques|lien symbolique]] du fichier ///​opt/​lampp/​lampp//​ dans le dossier ///​usr/​bin//​ : +
-<​code>​sudo ln -s /​opt/​lampp/​lampp /​usr/​bin/​lampp</​code>​ +
-Dorénavant,​ vous pourrez utiliser les commandes : +
-  ​*Pour démarrer le serveur : <​code>​sudo lampp start</​code>​ +
-  *Pour redémarrer le serveur : <​code>​sudo lampp restart</​code>​ +
-  *Pour sécuriser le serveur : <​code>​sudo lampp security</​code>​ +
-  *Pour arrêter le serveur : <​code>​sudo lampp stop</​code>​ +
-  *Pour accéder à la liste des options possibles : <​code>​sudo lampp</​code>​ +
- +
-Bien sur, vous pourrez toujours utiliser ces commandes avec ///​opt/​lampp/​lampp//​. +
- +
-===== 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é **~/​.local/​share/​applications** (ou **/​usr/​share/​applications**),​ [[:​tutoriel:​comment_modifier_un_fichier|créer un fichier]] nommé comme **xampp.desktop**. +
-  * Avec un éditeur de texte (par ex. [[gedit|gedit]]),​ y placer un contenu selon le modèle suivant : +
-<​file>​ +
-[Desktop Entry] +
-Version=1.0 +
-Type=Application +
-Terminal=Terminal +
-Categories=GNOME;​GTK+
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp start'​ +
-Name=Xampp +
-Comment= +
-Icon=/​opt/​lampp/​htdocs/​favicon.ico +
- +
-X-Ayatana-Desktop-Shortcuts=Start;​Restart;​Stop;​ +
- +
-[Start Shortcut Group] +
-Name=Start +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp start'​ +
-OnlyShowIn=Unity +
- +
-[Restart Shortcut Group] +
-Name=Restart +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp restart'​ +
-OnlyShowIn=Unity +
- +
-[Stop Shortcut Group] +
-Name=Stop +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp stop'​ +
-OnlyShowIn=Unity +
-</​file>​ +
- +
-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+
-  * [[:​tutoriel:​comment_modifier_un_fichier|Créez un fichier]] nommé **xampp.desktop** à la racine de votre dossier personnel ​(**/​home/​votrenomutilisateur/​**) ; +
-  * Avec un éditeur de texte (par ex. [[gedit|gedit]]),​ copiez le contenu suivant dans le fichier créé : +
- +
-<​file>​ +
-[Desktop Entry] +
-Version=1.0 +
-Type=Application +
-Terminal=Terminal +
-Categories=GNOME;​GTK;​ +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp start'​ +
-Name=Xampp +
-Comment= +
-Icon=/​opt/​lampp/​htdocs/​favicon.ico +
-Actions=Start;​Restart;​Stop;​ +
- +
-X-Ayatana-Desktop-Shortcuts=Start;​Restart;​Stop;​ +
- +
-[Desktop Action Start] +
-Name=Start +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp start'​ +
- +
-[Desktop Action Restart] +
-Name=Restart +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp restart'​ +
- +
-[Desktop Action Stop] +
-Name=Stop +
-Exec=xterm -e 'sudo /​opt/​lampp/​lampp stop'​ +
-</​file>​ +
- +
-  * Enregistrez le fichier ; +
-  * Ouvrez un [[terminal]]et lancez la commande suivante (qui va déplacer le fichier créé dans le dossier système des lanceurs d'​applications: +
-<​code>​ +
-cd ~ +
-sudo mv xampp.desktop /​usr/​share/​applications/​ +
-</​code>​ +
-Si vous avez créé votre fichier autre part qu'à la racine de votre dossier utilisateur (**/​home/​votrenomutilisateur/​**),​ remplacez le **~** de la commande **cd** par le chemin vers le dossier où vous avez placé le fichier. +
- +
-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**) +
-  * Ouvrez le menu des applications,​ normalement l'​application **Xampp** devrait apparaître. Cliquez droit dessus, puis cliquez sur **Ajouter aux favoris**. Le lanceur devrait apparaître dans la barre de tâches, cliquez droit dessus et vous découvrirez les options **Start**, **Restart** et **Stop** pour contrôler le démarrage et l'​arrêt du serveur. +
-===== Créer un lien symbolique pour accéder à ses sites web ===== +
- +
-Exemple d’arborescence projets Web : +
- +
-<​code>​$HOME/​www/​projects/</​code>​ +
- +
-$HOME équivaut à /​home/​votreUserName +
- +
-<​code>​echo $HOME #Affiche le chemin de votre home</code> +
- +
-Créer le dossier //www// et //​projects//​ dans votre home. +
- +
-Le caractere tilde '​~'​ équivaut à votre home +
-<​code>​mkdir -p ~/​www/​projects</​code>​ +
- +
-Création du lien symbolique du dossier projects au niveau de htdocs, utilisez cette commande ln -s (source vers la cible) ​: +
- +
-<​code>​sudo ln -s /​opt/​lampp/​htdocs/​projects ​$HOME/​www/​projects</code> +
- +
-Vérification du lien symbolique. +
-Placez-vous dans $HOME/​www/​projects et entrez la commande : +
-<​code>​ll</​code>​ +
-Ou +
-<​code>​ls -la</​code>​ +
- +
-Vous devriez avoir : +
-<​code>​projects -> $HOME/​www/​projects/​ </​code>​ +
- +
-Et maintenant si vous allez sur http://​localhost/​projects/​ vous aurez accès à vos sites à condition de vérifier les droits que vous avez sur le répertoire projects. +
-===== Lancer le Panneau de Contrôle graphique ===== +
- +
-Pour lancer le panneau de contrôle (GUI) de **XAMPP** (comme sous Windows), utilisez cette commande : +
- +
-<​code>​gksu /​opt/​lampp/​share/​xampp-control-panel/​xampp-control-panel</​code>​ +
- +
-Vous pouvez aussi faire la commande suivante pour avoir une interface plus agréable et plus complète:​ +
-<​code>​gksu /​opt/​lampp/​manager-linux-x64.run</​code>​ +
- +
-===== Désinstaller XAMPP ===== +
-Pour désinstaller XAMPP, il faut simplement supprimer le dossier ''/​opt/​lampp''​ : +
-<​code>​sudo rm -rf /​opt/​lampp</​code>​ +
-En effet, XAMPP tient en un seul dossier indépendant. +
- +
-===== Astuces ===== +
- +
-==== Modifier le dossier racine du serveur Apache ==== +
-Dans le ///​opt/​lampp/​etc/​httpd.conf//​ ligne 473-474, en sudo gedit modifier le : +
- +
- +
-<​code>#​ User home directories +
-#Include etc/​extra/​httpd-userdir.conf</​code>​ +
- +
- +
-en : +
- +
- +
-<​code>#​ User home directories +
-Include etc/​extra/​httpd-userdir.conf</​code>​ +
-Ensuite, dans ///​opt/​lampp/​etc/​extra/​httpd-userdir.conf//​ assurez-vous d'​avoir le code suivant: +
-<​code>#​ Settings for user home directories +
-+
-# Required module: mod_userdir +
- +
-+
-# 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,​ as in the example below. +
-+
-UserDir public_html +
- +
-+
-# Control access to UserDir directories. ​ The following is an example +
-# for a site where these directories are restricted to read-only. +
-+
-<​Directory /​home/​*/​public_html>​ +
-    AllowOverride FileInfo AuthConfig Limit Indexes +
-    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec +
-    <Limit GET POST OPTIONS>​ +
-        Order allow,​deny +
-        Allow from all +
-    </​Limit>​ +
-    <​LimitExcept GET POST OPTIONS>​ +
-        Order deny,​allow +
-        Deny from all +
-    </​LimitExcept>​ +
-</​Directory>​ +
-</​code>​ +
-Celui-ci vous permettra d'​accéder à tous les répertoires de publication des utilisateur. Pour qu'on puisse voir votre site web, vous devez le placer créer un répertoire ​(dossier) appelé //​public_html//​ et situé dans le répertoire ///​home/​votrenomdutilisateur///​. +
-Il est possible de changer l'​emplacement de ce dossier ou de changer son nom en éditant, dans ///​opt/​lampp/​etc/​extra/​httpd-userdir.conf//​ la valeur ///​home/​*/​public_html//​. +
-Cependant, il est conseillé de laisser ce chemin. +
- +
- +
-Dans Firefox : +
- +
-<​code>​http://​localhost/​~user/​votre_fichier</​code>​ +
- +
- +
-bonne route à tous ! +
-(source: http://​forum.ubuntu-fr.org/​viewtopic.php?​id=181007) +
- +
-==== Localhost, ​ accès interdit à phpmyadmin, nouveau concept de sécurité de xampp ==== +
- +
-Pour résoudre ce problème, Va falloir suivre les directive de xampp et donc modifier le fichier httpd-xampp.conf. +
- +
- +
-Faites tout d'​abord le backup du fichier+
- /​opt/​lampp/​etc/​extra/​httpd-xampp.conf +
- +
-Tapez : +
-sudo gedit /​opt/​lampp/​etc/​extra/​httpd-xampp.conf +
- +
-Cherchez maintenant la ligne : +
-Directory ​"/opt/​lampp/​phpmyadmin"​ +
- +
-Ajoutez : +
-<​code>​ Require all granted </​code>​ +
- +
-Vous devriez avoir un truc comme celui là :   +
- +
- +
-<​code>​ AllowOverride AuthConfig Limit  +
-Order allow,​deny +
-Allow from all +
-Require all granted </​code>​ +
- +
-Redémarrez votre serveur : +
-<​code>​ sudo /​opt/​lampp/​lampp restart </​code>​ +
- +
-Fini, normalement,​ phpmyadmin ​est désormais accessible. +
-ok +
-(Source ​[[http://​www.webzerone.com/​2012/​07/​error-403-new-xampp-security-concept.html]] ) +
- +
-Une autre petite contrainte pouvant arriver est le fait que la sécurité de XAMPP empêche d'​accéder au serveur XAMPP depuis l'​extérieur (il autorise seulement un accès en local donc). +
-Pour remédier à cela, il suffit d'​aller chercher le dernier paragraphe : +
-<code> +
-#New XAMPP security concept +
-<​LocationMatch "​^/​(?​i:​(?:​xampp|security|licenses|phpmyadmin|webaliser|server-status|server-info))">​ +
-            Require local +
-           ​ErrorDocument 403 /​error/​XAMPP_FORBIDDEN.html.var +
-</​LocationMatch>​ +
-</​code>​ +
-Puis de commenter les 4 lignes de <​LocationMatch>​ à </​LocationMatch>​ pour faire en sorte que la sécurité de XAMPP ne prenne pas en compte cette partie du code. Il est toutefois à noter que cette partie doit être conserver dans le cas d'une maintenance,​ afin de continuer à faire tourner en local le serveur sans pour autant aller tripoter le parefeu de Linux : [[:​iptables|iptables]].  +
- +
-===== Voir aussi ===== +
- +
-  ​**(fr)** [[https://​www.apachefriends.org/​fr/​index.html|Site officiel]] +
-  * **(en)** [[https://​sourceforge.net/​projects/​gui-multi-xampp/​|Utiliser une GUI et plusieurs versions de Xampp en parallèle]] +
-  * **(fr)** [[http://​doc.frapp.fr/​doku.php?​id=logiciel:​internet:​http:​xampp:​start0|Une autre approche, simple, de l'​installation de Xampp]] +
------- +
- +
-//​Contributeurs : [[:​utilisateurs:​Ju]],​ [[:​utilisateurs:​Darkagonik]],​ [[:​utilisateurs:​alain17]],​ [[:​utilisateurs:​Flix]],​ [[:​utilisateurs:​mydjey]],​ [[:​utilisateurs:​Eliastik]]//​+
  • xampp.1570711399.txt.gz
  • Dernière modification: Le 10/10/2019, 14:43
  • par jamaique