Salut les zamis, j’ai franchi un pas significatif dans ma migration vers Linux, alors je suis content, je partage la bonne nouvelle ainsi qu’un petit retour d’expérience. J’ai installé sous Trixie tous les outils qui me permettent désormais de faire du développement web, je peux enfin me passer de Windows pour ça, et c’est une bonne nouvelle.
J’utilisais WAMPserver sous Windows, qui a le mérite de tout packager et d’offrir une interface centralisée pour gérer toute la pile Apache, MariaDB, PHP : arrêt et redémarrage des services, bascule d’une version à l’autre (surtout utile pour PHP), configuration des hôtes virtuels, etc.
Sous Linux, point d’interface centralisatrice, il faut installer et administrer les services séparément. L’install de Apache et MariaDB se passe très bien, et pour bénéficier de plusieurs versions concurrentes de PHP, on ajoute le dépôt sury (grâce à extrepo). La liaison entre Apache et PHP se fait très facilement par les paquets suffixés _fpm.
Quelques spécificités par rapport à Windows :
-
Gestion des droits sur le dossier www : Debian ajoute par défaut un dossier
/var/www/htmlet invite le développeur à mettre ses sites là-dedans. Ce dossier est configuré root/root en 0755, mais il est préconisé de le transformer en [votre user]/www-data 2750. Ainsi, vous avez tous les droits pour développer, Apache a les droits en lecture pour afficher le site, et rien d’autre, ça fait le taf. -
Gestion des hôtes virtuels : Debian installe Apache avec une gestion précâblée des hôtes virtuels. On est incité à déclarer un unique hôte virtuel par fichier de conf dans le dossier /etc/apache2/sites-available, ces hôtes virtuels peuvent ensuite être activés/désactivés indépendamment avec les commandes
a2ensiteeta2dissite(ces commandes créent ou suppriment un lien dans /etc/apache2/sites-enabled en arrière-boutique). À noter que le même mécanisme de available/enabled est implémenté pour les modules et les configurations Apache. -
Gestion des droits root sur MariaDB : par défaut, MariaDB est installé avec son compte root lié au compte root Debian (connexion par unix_socket), c’est-à-dire qu’il est impossible de s’y connecter à l’ancienne avec un mot de passe MariaDB. J’ai donc utilisé
sudo mariadbpour accéder au prompt sql et créer des comptes applicatifs distincts, un par base de données. Donner à ces comptes les droits CREATE DROP INDEX ALTER SELECT INSERT UPDATE DELETE sur leur base associée est suffisant pour la suite.
Quelques considérations perso :
- Adminer a ma préférence comme outil d’administration de MariaDB, il est ultra léger et se présente sous la forme d’un unique script PHP pour tout faire.
- Composer pour PHP et npm pour NodeJS s’installent très facilement
-
Vscodium a ma préférence comme IDE, l’intégration native de git est un plus. Là aussi, j’ai fait appel à
extrepopour installer facilement son dépôt. Je ne sais pas pourquoi, mais la dernière version a besoin que je la lance avec une option--disable-gpu, sinon j’ai une fenêtre toute noire (bug 2702). - apt pour la gestion de toutes ces briques est une vraie simplification. Sous Windows, chaque mise à jour de Apache ou installation d’une nouvelle version de PHP, NodeJS, etc se traduisait par des téléchargements sur des sites sourceforge ou autre, des installations plus ou moins compliquées… C’est un vrai soulagement sous Linux.
