Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
xampp [Le 11/12/2012, 10:23] 93.6.217.14 [Voir aussi] |
xampp [Le 09/01/2024, 17:09] (Version actuelle) O_20_100_O [Pré-requis] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>programmation serveur vétuste}} | + | {{tag>Bionic serveur réseau}} |
+ | ---- | ||
+ | {{ :xampp:xampp-logo.png?80|}} | ||
+ | ====== XAMPP : un serveur LAMP complet====== | ||
- | >**TODOlist :**\\ Remettre la page au goût du jour (modifier les liens vers les packages Hardy), respecter les règles de rédaction. | + | Le paquet open source **XAMPP** est un serveur LAMP complet et pré-configuré. Il contient : |
- | >//_Enchained// | + | * un serveur HTTP [[:apache2|Apache 2]], |
+ | * une base de données [[:MariaDB]] avec [[:phpMyAdmin]], | ||
+ | * [[:SQLite]] | ||
+ | * [[:PHP]], | ||
+ | * Perl, | ||
+ | * et un serveur FTP : [[:ProFTPD]] | ||
+ | * et de nombreuses bibliothèques | ||
+ | |||
+ | {{ :xampp:xampp-19.04-03.png?400 |}} | ||
- | ------ | + | 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 : un serveur web de développement facile ====== | + | |
- | [[http://www.apachefriends.org/fr/|XAMPP]] est un produit qui s'installe très rapidement et facilement et qui fournit un ensemble complet de services pour faire tourner un serveur web. Cette solution est très pratique pour créer un serveur //**de développement**//, car il permet au néophyte d'avoir un serveur de test en quelques clics, sans avoir à choisir ni connaître les différents services à installer. | + | Il est multi-plateforme et existe donc pour Linux, Windows et OS X. |
- | Toutefois, **XAMPP n'est pas destiné à un environnement de production** ; cette solution est __peu sécurisée__ du côté des applications. Pour un serveur de production, il est grandement recommandé de préférer l'installation de chaque service individuellement, à l'aide des paquets précompilés fournis par Ubuntu. Afin d'installer un serveur sécurisé facilement, vous pouvez utiliser [[:LAMP]] comme base [[:Apache]], [[:MySQL]] et [[:PHP]] et rajouter ensuite uniquement les services dont vous avez besoin. | + | Tout est installé de façon conjointe avec les emplacements et autorisations qui vont bien. |
- | XAMPP est disponible pour GNU/Linux, mais aussi pour Microsoft(r) Windows(r) et Apple(r) Mac OS(r). | + | <note warning> |
+ | * XAMPP n'est pas sécurisé par défaut et ne convient pas à un environnement de production, donc à moins de travailler sur des exercices, l'environnement sera très différent entre développement et production, ce qui limite l'intérêt de XAMPP, qui ne sera en particulier d'aucune utilité si on cherche à s'auto-héberger ou à gérer un VPS. | ||
+ | * 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://www.apachefriends.org/docs/|quasi inexistante]]. | ||
+ | * XAMPP se dit open source mais les seules sources disponibles simplement concernant Linux sont [[https://sourceforge.net/projects/xampp/files/XAMPP%20Linux/7.4.1/|un simple fichier run]]. Impossible donc de savoir exactement ce que fait le script d'installation. | ||
- | Pour plus de détails sur XAMPP, consultez la rubrique [[#Choisir XAMPP ou installer chaque application séparément ?]] | + | Dans ces conditions, mieux vaut généralement installer la pile [[:LAMP]] telle qu'elle a été conçue officiellement pour Ubuntu. |
+ | </note> | ||
- | === Liste des applications installées === | + | <note important>**Pour un serveur de production, mieux vaut installer la pile [[:LAMP]] de manière traditionnelle**, via les dépôts officiels d'Ubuntu qui sera beaucoup plus sécurisée par défaut. |
- | XAMPP inclut par défaut les applications suivantes : | + | Cependant, le serveur XAMPP installe des valeurs sûres, celles décrites en introduction. |
- | * [[:apache2|Apache 2]] | + | Les sites qui fonctionnent sur XAMPP fonctionneront a priori avec n'importe quelle pile LAMP (à condition d'avoir des versions compatibles des logiciels, en particulier celle de [[:PHP]] et de ses [[:php#modules]]) : il suffit de copier le répertoire concerné et de déplacer la ou les bases de données avec leurs utilisateurs. |
- | * [[:MySQL]] | + | |
- | * [[:php|PHP 5]] & [[http://packages.ubuntu.com/gutsy/web/php-pear|PEAR]] | + | |
- | * [[:perl|Perl]] | + | |
- | * [[:proftpd|ProFTPD]] | + | |
- | * [[:phpmyadmin|phpMyAdmin]] | + | |
- | * [[:Openssl|OpenSSL]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/web/php5-gd|GD]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/graphics/libjpeg-progs|libjpeg]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/libdevel/libpng12-dev|libpng]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/base/libgdbm3|gdbm]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/libs/zlib1g|zlib]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/text/expat|expat]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/text/sablotron|Sablotron]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/libdevel/libxml-dev|libxml]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/devel/mingw32-binutils|Ming]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/web/webalizer|Webalizer]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/web/php-fpdf|pdf class ]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/base/ncurses-bin|ncurses]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/perl/libapache2-mod-perl2|mod_perl]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/devel/freetds-dev|FreeTDS]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/devel/gettext|gettext]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/web/php5-mcrypt|mcrypt]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/web/php5-mhash|mhash ]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/web/php5-sqlite|SQLite]] | + | |
- | * [[http://packages.ubuntu.com/gutsy/libdevel/libc-client2007b-dev|IMAP C-Client]] | + | |
- | L'installation se fait simplement en décompressant un fichier ''.tar.gz'' ; cette installation est très bien détaillée ici dans un [[http://www.framasoft.net/article3769.html|article de Framasoft]]. | + | Si vous êtes curieux·euse, vous pouvez modifier XAMPP moyennant quelques « bidouilles » et une bonne connaissance de sa structure. |
- | + | ||
- | Pour ceux qui voudraient installer l'équivalent de XAMPP à partir des paquets, [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **apache2 apache2-doc mysql-server php5 libapache2-mod-php5 php5-mysql perl php-pear proftpd phpmyadmin openssl php5-gd freetype2-demos libfreetype6 libjpeg-progs libjpeg62 libpng12-0 libgdbm3 zlib1g expat sablotron libapache2-mod-php5 php5-cli proftpd-doc libgd-tools libcompress-zlib-perl libxml2-dev mingw32-binutils webalizer php-fpdf ncurses-bin libapache2-mod-perl2 libapache2-mod-perl2-doc freetds-dev gettext php5-mcrypt php5-mhash php5-sqlite libc-client2007b-dev php5-xcache** ou [[apt://apache2,apache2-doc,mysql-server,php5,libapache2-mod-php5,php5-mysql,perl,php-pear,proftpd,phpmyadmin,openssl,php5-gd,freetype2-demos,libfreetype6,libjpeg-progs,libjpeg62,libpng12-0,libgdbm3,zlib1g,expat,sablotron,libapache2-mod-php5,php5-cli,proftpd-doc,libgd-tools,libcompress-zlib-perl,libxml-dev,mingw32-binutils,webalizer,php-fpdf,ncurses-bin,libapache2-mod-perl2,libapache2-mod-perl2-doc,freetds-dev,gettext,php5-mcrypt,php5-mhash,php5-sqlite,libc-client-dev,php5-xcache|en 1 clic ]](assez long). | + | |
+ | 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 [[:ssh_avance#utiliser_ssh_pour_faire_du_sftp_transfert_de_fichier_securise|SFTP]].__ | ||
+ | </note> | ||
===== Pré-requis ===== | ===== Pré-requis ===== | ||
- | * Disposer des [[:sudo|droits d'administration]]. | + | * Une connexion internet. |
- | * Disposer d'une connexion à Internet configurée et activée. | + | |
- | ===== Installer et utiliser XAMPP ===== | + | ===== Installation ===== |
- | ==== Installation ==== | + | Tout XAMPP tient en un seul répertoire : **/opt/lampp**. |
- | L'installation de XAMPP se veut d'une extrême simplicité (logique ;-)). | + | |
- | - Récupérez [[http://www.apachefriends.org/fr/xampp-linux.html|l'archive d'installation de XAMPP]] sur le site d'Apache Friends et téléchargez-la **dans votre dossier personnel** (''/home/votre_identifiant'') ; Si vous rechercher une version bien précise de XAMPP pour Joomla par Exemple [[http://sourceforge.net/projects/xampp/files/XAMPP%20Linux/|C'est ici]] | + | |
- | - Le répertoire ''/opt'' n'existe pas forcément sur votre système. Si c'est le cas (vérifiez avec un ''ls / | egrep opt'' dans le terminal), ouvrez un terminal et entrez la commande suivante : <code>sudo mkdir /opt</code> | + | |
- | - Ouvrez un terminal et entrez la commande suivante : <code>sudo tar xvfz ./xampp-linux-*.tar.gz -C /opt</code>**N'utilisez pas d'utilitaire graphique pour décompresser l'archive de XAMPP !** Autrement, des conflits avec des droits d'accès aux fichiers peuvent se produire durant l'installation, résultant un XAMPP qui ne pourra pas démarrer. | + | |
- | <note help>tar : commande qui sert à gérer les archives tar ou tar.gz. | + | Son installation est donc d'une extrême simplicité (de même que sa désinstallation = supprimer le répertoire **/opt/lampp**). |
- | commutateurs : | + | Sur la page [[https://www.apachefriends.org/fr/index.html]], choisissez la version 32 ou 64 bits selon votre système d'exploitation Linux. |
- | * **x** : e**__x__**trait l'archive ; | + | |
- | * **v** : active le mode « **__v__**erbeux » (bavard, affiche ce qu'il fait); | + | |
- | * **f** : utilise le **__f__**ichier donné en paramètre ; | + | |
- | * **z** : prend en charge la compression G**__z__**ip ; | + | |
- | * **xamp-linux-*.tar.gz** : nom de l'archive a décompresser | + | |
- | * **-** : concerne la sortie (le résultat) de la commande | + | |
- | * **C** : change de dossier | + | |
- | * **/opt** : répértoire d'installation de logiciels suplémentaires | + | |
- | </note> | + | |
- | Ça y est, XAMPP est installé et configuré pour être immédiatement utilisé ! Pour information, XAMPP est installé dans le répertoire ''/opt''. | + | Modifiez les autorisations du programme d'installation et lancez-le en mode super-utilisateur : |
- | + | ||
- | Pour démarrer XAMPP, vous devez taper dans votre terminal : | + | |
- | <code>sudo /opt/lampp/lampp start</code> | + | |
- | + | ||
- | + | ||
- | === Complément pour une installation sous Ubuntu 64 bits === | + | |
- | + | ||
- | Si vous installez XAMPP sur une [[ubuntu_64bits|version 64 bits d'Ubuntu]], vous obtiendrez probablement le message suivant au lancement de XAMPP : <code>XAMPP is currently only availably as 32 bit application. Please use a 32 bit compatibility library for your system.</code> | + | |
- | + | ||
- | Si c'est le cas, vous devez installer les bibliothèques de compatibilité 32 bits. [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt://ia32-libs|ia32-libs]]**. Vous pouvez ensuite démarrer à nouveau XAMPP avec la commande indiquée ci-dessus. | + | |
- | + | ||
- | ==== Installation via ajout d'un dépot PPA (à partir d'Ubuntu Oneiric 11.10) ==== | + | |
- | + | ||
- | Ajouter le dépot PPA et installer XAMPP via la ligne de commande suivante : | + | |
- | sudo add-apt-repository ppa:upubuntu-com/xampp && sudo apt-get -qq update && sudo apt-get install xampp | + | |
- | Pour démarrer XAMPP, vous devez taper dans votre terminal : | + | |
- | sudo /opt/lampp/lampp start | + | |
- | + | ||
- | ==== 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, il l'est néanmoins fortement recommandé. | + | |
- | Répondre "no" a cette question : | + | |
- | <code>XAMPP: MySQL is accessable via network. | + | |
- | XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] **no**</code> | + | |
- | + | ||
- | ==== Démarrer XAMPP ==== | + | |
- | <note important>Note importante pour Hardy 8.04, la version de XAMPP inférieure à la 1.6.8a ne fonctionne pas, apache n'arrive pas à démarrer.</note> | + | |
- | <note important> | + | |
- | Note importante pour Gutsy 7.10 si vous utilisez une version de XAMPP inférieure à la 1.6.5a : | + | |
- | Il est nécessaire d' [[:tutoriel:comment_editer_un_fichier|éditer le fichier]] **/opt/lampp/lampp** | + | |
- | + | ||
- | À la ligne N°74 | + | |
- | remplacez: | + | |
- | <file>arch</file> | + | |
- | par | + | |
- | <file>uname -m</file> | + | |
- | </note> | + | |
- | + | ||
- | Ensuite démarrer XAMPP : | + | |
- | + | ||
- | <code>sudo /opt/lampp/lampp start</code> | + | |
- | + | ||
- | Vous verrez alors défiler le texte suivant : | + | |
<code> | <code> | ||
- | Starting XAMPP for Linux 1.6.7... | + | cd /chemin_vers_le/répertoire_de_téléchargement/ |
- | XAMPP: Starting Apache with SSL (and PHP5)... | + | sudo chmod +x xampp-linux-*-installer.run |
- | XAMPP: Another MySQL daemon is already running. | + | sudo ./xampp-linux-*-installer.run |
- | XAMPP: Starting ProFTPD... | + | |
- | XAMPP for Linux started. | + | |
</code> | </code> | ||
+ | {{ :xampp:xampp-19.04-01.png?400 |}} | ||
- | Vous pouvez désormais accéder à votre serveur local avec l'adresse [[http://localhost/]] dans la barre d'adresse de votre navigateur Internet. | + | 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 : |
+ | {{ :xampp:xampp-19.04-02.png?400 |}} | ||
- | 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"). | + | Ouvrez l'onglet **Manage Servers** et cliquez sur **Start All** pour démarrer les serveurs : |
+ | {{ :xampp:xampp-19.04-03.png?400 |}} | ||
- | Le répertoire web est ''/opt/lampp/htdocs''. | + | <note tip>Pour que Xampp se lance au démarrage, lancez dans un terminal : |
+ | <code>sudo ln -s /opt/lampp/lampp /etc/init.d/lampp | ||
+ | sudo update-rc.d lampp defaults | ||
+ | </code></note> | ||
- | Placez vos pages web dans ce répertoire pour y accéder depuis l'adresse [[http://localhost/]]. | + | Au redémarrage, XAMPP sera démarré. Le répertoire htdocs est la racine du serveur. |
- | Attention le dossier "htdocs" ne sera accessible en lecture et en écriture que seulement si vous accordez les privilèges avec ces commandes : \\ | ||
- | <code> | ||
- | sudo chmod -R 777 /opt/lampp/htdocs | ||
- | </code> | ||
- | Pour que Xampp se lance au démarrage, il suffit d’exécuter les commandes suivantes dans un terminal: | + | ===== Configuration ===== |
- | <code> | + | ==== Aliases suggérés ==== |
- | 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. | + | Pour vous simplifier la vie, créez des aliases en éditant ou créant le fichier **~/.bash_aliases** pour y écrire : |
+ | <code bash ~/.bash_aliases> | ||
+ | # Alias pour permettre sudo [un_alias] | ||
+ | alias sudo='sudo ' | ||
- | ==== Arrêter XAMPP ==== | + | # Aliases pour Xampp |
- | Pour arrêter XAMPP, vous devrez saisir, dans un terminal, la commande suivante: | + | alias lampp='/opt/lampp/lampp' |
- | <code>sudo /opt/lampp/lampp stop</code> | + | alias ctlampp='/opt/lampp/manager-linux-x64.run' |
- | Vous verrez alors défiler le texte suivant: | + | |
- | <code> | + | # Aliases pour proftp |
- | Stopping XAMPP for Linux 1.6.7... | + | alias ftpasswd='/opt/lampp/bin/ftpasswd' |
- | XAMPP: Stopping Apache with SSL... | + | |
- | XAMPP: XAMPP-MySQL is not running. | + | |
- | XAMPP: Stopping ProFTPD... | + | |
- | XAMPP stopped. | + | |
</code> | </code> | ||
- | XAMPP est alors arrêté. | + | 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 ... | | ||
- | ===== Raccourcir la commande ===== | + | L'alias sudo='sudo ' permet d'utiliser les autres aliases en sudo, comme avec |
- | Vous pouvez créer un [[http://doc.ubuntu-fr.org/doc/glossaire#liens_symboliques_ou_logiques|lien symbolique]] du fichier ///opt/lampp/lampp// dans le dossier ///usr/bin// : | + | <code>sudo lampp start</code> |
- | <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émarer 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//. | + | Activez les aliases par : |
- | ===== créer un lien symbolique pour accéder à ses sites web ===== | + | <code>source ~/.bash_aliases</code> |
- | Exemple d’arborescence projets web: | + | ==== Sécurisation ==== |
- | <code>home/VotreUserName/www/projects/</code> | + | Pour changer les mots de passe de **MySQL**, MySQL/**phpMyAdmin** et **FTP**, lancez : |
+ | sudo lampp security | ||
- | Création du lien symbolique du dossier projects au niveau de htdocs, utilisez cette commande ln -s (source vers la cible) : | + | 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. | ||
- | <code>sudo ln -s /home/VotreUserName/www/projects /opt/lampp/htdocs/projects </code> | + | ==== Créer un lanceur sous Gnome ==== |
- | Vérification du lien symbolique. | + | Si l'installation n'a pas créé de lanceur, le mieux est d'utiliser [[:menulibre|MenuLibre]] pour en ajouter un. |
- | Placez-vous dans /opt/lampp/htdocs et entrez la commande : | + | ===== Utilisation===== |
- | <code>ll</code> | + | |
- | Ou | + | |
- | <code>ls -la</code> | + | |
- | Vous devriez avoir : | + | ==== Commandes ==== |
- | <code>projects -> /home/VotreUserName/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. | + | Avec les aliases suggérés plus haut, voici les commandes : |
- | ===== Lancer le Panneau de Contrôle graphique ===== | + | * **Démarrer** le serveur :<code>sudo lampp start</code> |
+ | * **Redémarrer** le serveur :<code>sudo lampp restart</code> | ||
+ | * **Sécuriser** le serveur :<code>sudo lampp security</code> | ||
+ | * **Arrêter** le serveur :<code>sudo lampp stop</code> | ||
+ | * **Liste des options** possibles :<code>sudo lampp</code> | ||
+ | * Lancer le **panneau de contrôle** :<code>sudo ctlampp</code> | ||
- | Pour lancer le panneau de contrôle (GUI) de **XAMPP** (comme sous Windows), utilisez cette commande : | + | Bien sûr, vous pourrez toujours utiliser ces commandes avec **/opt/lampp/lampp**. |
- | <code>gksu /opt/lampp/share/xampp-control-panel/xampp-control-panel</code> | + | ==== Essai ==== |
- | ===== Désinstaller XAMPP ===== | + | Depuis un PC du réseau, connectez-vous au PC sur lequel tourne le serveur, par exemple [[http://192.168.0.7]] : |
- | Pour désinstaller XAMPP, il faut simplement supprimer le dossier ''/opt/lampp'' : | + | {{ :xampp:xampp-19.04-04.png?400 |}} |
- | <code>sudo rm -rf /opt/lampp</code> | + | |
- | En effet, XAMPP tient en un seul dossier indépendant. | + | |
- | ===== Choisir XAMPP ou installer chaque application séparément ? ===== | + | ==== Mettre en place un site ==== |
- | Si XAMPP installe rapidement et simplement tous les services listés ci-haut, il est également possible d'utiliser le logiciel ''[[:apt|apt-get]]'' (en ligne de commande dans un terminal, ou avec ses interfaces graphiques [[:Synaptic]] ou [[:Adept]]) pour télécharger et paramétrer automatiquement chacune de ces applications //(référez-vous au chapitre //[[#avoir_son_serveur_de_developpement_sans_xampp|Avoir son serveur de développement sans XAMPP]]// de ce document)//. | + | 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 ==== | ||
- | Quelle solution est à privilégier pour vous ? | + | Rappelons que ce serveur tout-en-un n'a pas d'autre prétention que d'être un petit serveur local de travail. |
- | ==== Sécurité === | + | __Pour une mise en exploitation, mieux vaut se tourner vers un [[:lamp|Serveur web - LAMP]]__ |
- | D'un point de vue sécurité, il est sans doute préférable d'opter pour installer les services par les paquets Ubuntu plutôt que par l'archive ''.tar.gz'' de XAMPP. Les paquets proposés via ''apt-get'' ont été testés par l'équipe de développement de Ubuntu et, au moment où ils sont publiés, ne contiennent aucune vulnérabilité. De plus, si un problème de sécurité est découvert, le gestionnaire de mise à jour télécharge de lui-même les paquets Ubuntu plus récents, corrigeant ainsi les problèmes de sécurité | + | |
- | De son côté, une installation par archive (''.tar.gz'') de XAMPP ne propose pas de mises à jour automatiques. Elle correspond plutôt à une solution clé-en-main, comme les WampServer et EasyPHP pour Windows. Elle n'est pas non plus sécurisée du côté de l'administration. C'est d'ailleurs pour cette raison que XAMPP est destiné à un environnement de développement, **pas à un environnement de production** ! | + | 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** | ||
- | ==== Support ==== | + | <note tip>__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. |
- | En cas de problème avec l'une ou l'autre des applications installées par XAMPP, vous désirerez sans doute recevoir un peu d'aide. Si vous demandez de l'aide sur Apache, par exemple (//mais ça reste valable pour n'importe quelle autre application du lot//) à des utilisateurs Debian/Ubuntu, vous serez aiguillé vers le fichier de configuration d'Apache : "/etc/apache2/apache2.conf" (anciennement ''/etc/apache/httpd.conf''). Or, ce fichier n'existe pas sous cette forme avec l'installation par XAMPP (tout est un peu en vrac dans ''/opt/lampp/''). Donc, en cas de difficulté avec les applications installées par XAMPP, seuls les utilisateurs de cette solution clé-en-main pourront vous aider. Autrement, ce sera à vous d'adapter les réponses données pour résoudre vos problèmes. | + | |
- | ==== Pourquoi XAMPP existe-t-il ? ==== | + | <note important>Bien évidemment, gardez des permissions sûres pour ne pas ouvrir votre serveur de travail à tout le net !</note> |
- | XAMPP sous Linux peut paraître inutile ; il est même fortement déconseillé pour une utilisation en production. Cependant, sa qualité première est de permettre la mise en place d'une plate-forme de tests en un temps record. | + | Mais dans ce cas, le plus simple est **__d'installer tout de suite un serveur LAMP et un serveur FTP__**.</note> |
+ | ===== Désinstallation ===== | ||
- | En effet l'installation d'un serveur web nécessite de se plonger dans les fichiers de configuration de chacun des service nommés plus haut. De son côté, XAMPP fonctionne dès son dépaquetage, tout est déjà paramétré pour vous. Mais les réglages par défaut ne sont pas d'une sécurité à toute épreuve ; aussi XAMPP est-il destiné à un environnement de développement. | + | Pour supprimer cette application, il suffit de supprimer le répertoire **/opt/lampp** :<code>sudo rm -R /opt/lampp/</code>ainsi que l'éventuel raccourci sur le bureau. |
- | XAMPP peut aussi être utile pour les distributions Linux ne disposant pas de la gestion de paquets précompilés. Ubuntu gérant des paquets au format ''.deb'' via le logiciel ''apt-get'', XAMPP est donc sans doute moins utile pour cette distribution. Les avis sur l'utilité de XAMPP sont partagés. | + | <note important>**__Attention !__** |
- | ==== Avoir son serveur de développement sans XAMPP ==== | + | Cela effacera tout vos sites en /opt/lampp/htdocs ... ! |
- | Puisque nous connaissons la liste des services installés par XAMPP et que notre distribution favorite gère l'installation des paquets précompilés, il est tout à fait possible d'avoir son propre serveur de développement, probablement plus sécurisé, sans passer par la solution XAMPP. Il est possible d'installer un serveur à partir de paquets ''.deb'' à l'aide du système de gestion de paquets de Ubuntu. À ce sujet, référez-vous au tutoriel d'[[:lamp|installation d'un serveur LAMP]]. | + | **__Commencez par recopier en lieu sûr (en mode sudo...) le répertoire /opt/lampp/htdocs !__**</note> |
+ | ===== Modifier l'emplacement de la racine du serveur Apache ===== | ||
+ | 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 | ||
- | ===== Astuces ===== | + | Désormais, toute référence à /opt/lampp/htdocs sera redirigée vers le répertoire voulu (à créer au besoin) |
- | ==== Modifier le dossier racine du serveur Apache ==== | ||
- | Dans le ///opt/lampp/etc/httpd.conf// ligne 473-474, en sudo gedit modifier le : | ||
+ | par Davis Maghulu Kabuyaya | ||
+ | ===== Voir aussi ===== | ||
- | <code># User home directories | + | * **(fr)** [[https://www.apachefriends.org/fr/index.html|Site officiel du logiciel xampp]] |
- | #Include etc/extra/httpd-userdir.conf</code> | + | * **(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]] | ||
+ | ---- | ||
- | en : | + | //Contributeurs principaux : [[:utilisateurs:Ju]], [[:utilisateurs:Darkagonik], [[:utilisateurs:alain17]], [[:utilisateurs:Flix]], [[:utilisateurs:mydjey]], [[:utilisateurs:Eliastik]], [[utilisateurs:jamaique]].// |
- | + | ||
- | + | ||
- | <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:/%e pour Hardy 8.04, la version ateur/votrefichier</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. | + | |
- | + | ||
- | (Source : [[http://www.webzerone.com/2012/07/error-403-new-xampp-security-concept.html&ei=em3GUMTWMcmRhQeAx4CgDQ&usg=AFQjCNG33MZaH3-aiDC32dd4oRhXgxzoJQ]] ) | + | |
- | ===== Voir aussi ===== | + | |
- | + | ||
- | * **(fr)** [[http://www.apachefriends.org/fr/xampp-linux.html|Site officiel]] | + | |
- | * **(en)** [[http://smashingweb.info/install-xampp-1-7-7-ubuntu-12-0411-10-via-ppa/|Install XAMPP 1.7.7 Ubuntu 12.04/11.10 via PPA]] | + | |
- | ------ | + | //Basé sur [[www.apachefriends.org/fr/index.html|Site officiel du logiciel xampp]] par ApacheFriends.// |
- | //Contributeurs : [[utilisateurs:Ju]], [[utilisateurs:Darkagonik]], [[utilisateurs:alain17]], [[utilisateurs:Flix]] // |