Magento E-Commerce sur plateforme Ubunbtu
Je démarre l’installation d’une plate-forme de boutiques sur mon serveur dédibox avec Ubuntu : j’ai choisi Magento.
On passe naturellement par la partie des "system requirements". Donc, apache2, c’est bon. PHP 5.2, c’est bon avec un apt-get upgrade. Les modules PHP demandés sont fournis dans les packages php5-mysql, php5-mcrypt, php5-mhash et dans les packages installés automatiquement à la pise en place du package php5. Dans un premier temps, j’ai décidé de conserver mon php.ini tel quel, même si il faudra sans doute le modifier pour les paramètres sendmail et ceux du cache apc, plus tard.
Il y a un minimum de réflexion avant de se lancer dans l’installation. J’ai décidé d’avoir une base de donnée pour un catalogue spécifiques de produits et de ne pas mixer des catalogues qui ne se trouveront jamais dans une même boutique. Cela devrait permettre de plus facilement déplacer le site sur d’autres machines. De même, Magento arrive avec tous ses fichiers, y compris le framework Zend, dans une seule arborescence : j’ai décidé de mettre cette arborescence dans un répertoire principal et de configurer des VirtualHosts qui utiliseront cette arborescence comme DocumentRoot. Cela permettra de rajouter dans le répertoire principal des choses plus spécifiques sans avoir besoin de les mixer avec les fichiers Magento, ce qui posera sans doute un problème pour les mises à jour et les évolutions ultérieures.
Pour améliorer les performances dès le début, il ne faut pas oublier de conserver AllowOverride None et donc d’inclure le .htaccess fourni par Magento dans la configuration principale du virtualhost correspondant.
Comme je suis parano, je n’ai pas voulu que tous les fichiers de l’arborescence soient libres en écriture. Or c’est un élement requis pour utiliser le Magento Connect Manager dans l’interface d’administration. Cela permet aussi d’éviter des problèmes d’installation si cette interface est accessible à une personne non-avertie. Cela m’oblige à passer par PEAR, mais il n’y a rien à installé à priori car Magento contient déjà tout ce qu’il faut. La doc de magento est assez claire sur la façon de procéder ensuite. Ce qui fait que j’ai installé le pack des traductions françaises en quelque secondes.
L’un dans l’autre, ce que j’ai vu confirme mes lectures : Magento a l’air extrêmement intéressant pour un site e-commerce de petite ou moyenne taille.


Effectivement pear m’a semblé être la méthode la plus pratique pour les upgrades.
Pour gérer un environnement de développement ET un environnement de prod, j’ai du créer des scripts qui dumpent la base de données et qui change la valeur de l’HOST qui est écrite en base de données. Je n’avais pas trouvé d’explication particulière sur les forums pour les déploiements d’une machine à l’autre.