Installation de SugarCRM en local (sous Linux avec LAMP), problèmes de droits d’écritures d’un certain nombre de fichiers

Je publie une partie d’un petit tutoriel que je m’étais fait après avoir installé SugarCRM en local sur mon Linux.

Problèmes aux niveau de la configuration de phpmyadmin (ajout de virtualhosts, reload nécessaire de apache2), ainsi qu’au niveau de la configuration de PHP (taille de la mémoire passée de 16Mo à 42Mo, taille des fichiers uploadable de 2Mo à 6Mo, en allant modifier le fichier php.ini dans le répertoire /etc/php5/apache2/).

Ajout de deux modules à PHP (dans le but de régler les problèmes dans l’installation de SugarCRM en local, notamment en ce qui concerne la gestion des mails) :

  • php5-curl : PHP supporte libcurl, une bibliothèque créée par Daniel Stenberg, qui vous permet de vous connecter, de communiquer avec de nombreux serveurs, grâce à de nombreux protocoles. libcurl supporte actuellement les protocoles suivants : HTTP, HTTPS, FTP, gopher, telnet, dict, file, et LDAP. libcurl supporte aussi les certificats HTTPS, les POST HTTP, PUT HTTP, le chargement par FTP (ce qui peut être fait par l’extension FTP), les chargements par formulaire HTTP, les proxies, les cookies et l’identification par mot de passe et nom d’utilisateur. Exemple : Utilisation de cURL pour récupérer le contenu d’une page et l’enregistrer dans un fichier texte.
  • php5-imap : « Internet Message Access Protocol (IMAP) est un protocole utilisé par les serveurs de messagerie électronique, fonctionnant pour la réception. » (source : Wikipédia). Ce paquet fournit un module pour les fonctions IMAP dans les scripts PHP. Il est employé dans de nombreux logiciels tel que VTigerCRM pour gérer des fonctions de messagerie.


Problème de droits au niveau de l’installation du pack de langue française.
Debuggage d’abord avec apache en regardant dans /var/log/apache2/ les fichiers error.log et access.log (avec la commande bash « cat » ou « more »).
Si on ne trouve pas les erreurs correspondantes dans apache, debuggage avec les messages d’erreurs de PHP.

Utilisation de SugarCRM en local, dans le but de le prendre en main (prise en main plus aisée, après lecture de la documentation la veille) :

  • Apprentissage des outils de définitions de rendez-vous et d’appels, avec les différents outils qui s’y rapportent (Calendrier, gestionnaire d’appels, et gestionnaires de rendez-vous).
  • Création de plusieurs comptes type, en rapport avec le monde du vin, de la restauration et du théâtre.
  • Création de plusieurs affaires (ventes et achats : affaire est le mot qui regroupe tous les cash-flows liés à l’approvisionnement et à la vente de produits).


Étude de l’utilisation de l’outil de personnalisation des champs, afin de pouvoir ajouter ou supprimer des champs dans l’application dédiée à la gestion des ventes dans l’outil SugarCRM.

Pour modifier des champs dans SugarCRM :
Aller dans Admin > Studio > Module à éditer.

Création du champ associé au libellé « Date de la première rencontre » dans Compte.
Création d’un champ de sélections associées aux préférences de goût dans « Affaires ». Je ne suis pas parvenu à aller jusqu’au bout : le champ créé n’apparaît pas dans l’interface relative aux comptes. (Ce problème a été réglé par la suite : en fait c’est le fait que SugarCRM soit installé en local qui posait problème : l’installation en ligne a permit de modifier les champs normalement).

Cette page a pu être faite grâce aux tutoriels d’Ubuntu-fr (pages LAMP et VirtualHost) et à la documentation française sur SugarCRM.

Notes prises à propos de l’installation et de la vérification de la bonne installation de LAMP.

  1. Installer un serveur apache (LAMP ; c’est à dire sous Linux, avec Apache, MySQL et PHP) en local sur son ordinateur :
  2. D’abord, ouvrir une commande et taper : sudo apt-get install apache2 apache2-doc mysql-server php5 libapache2-mod-php5 php5-mysql phpmyadmin
  3. Attention, pendant l’installation, vous aurez certainement à intervenir pour valider la lecture de la licence, ainsi que pour donner un mot de passe administrateur à MySQL.
  4. Après l’installation, vérifier que Apache a bien fonctionné en allumant le navigateur et en tapant : http://localhost/
  5. Si vous avez le message « It Works », c’est que c’est bon.
  6. Supprimez le fichier index.html situé dans /var/www/ (ce qui peut être fait en tapant dans un terminal : sudo rm /var/www/index.html)
  7. Maintenant, on va vérifier que PHP est bien fonctionnel. Pour cela, creez sur le bureau un fichier vide, dans lequel vous écrirez : « <?php phpinfo(); ?> » (écrire ce qui est entre les guillemets). Puis, renommez le fichier en « phpinfo.php » (le nom qui est entre les guillemets). Enfin, déplacez le fichier phpinfo.php dans le répertoire /var/www/ (ce qui peut être fait très simplement en tapant dans le terminal : « sudo mv /home/moncompte/Desktop/phpinfo.php /var/www/phpinfo.php », bien sûr, ne taper que ce qui est entre les guillemets et remplacer moncompte par votre nom de compte. Par exemple, mon compte est appelé louis –parce que je m’appelle Louis–, donc la ligne de commande que j’ai tapée est sudo mv /home/louis/Desktop/phpinfo.php /var/www/phpinfo.php).
  8. Puis tester le fichier en question en allant à la page « http://localhost/phpinfo.php » (ne taper que l’adresse entre les guillemets, bien sûr).
  9. Si quand vous allez à l’adresse http://localhost/, vous ne voyez pas de dossier phpmyadmin, c’est qu’il manque le lien. Pour le créer,  (car sous Ubuntu Hardy et Gusty, celui-ci n’est pas créé par défaut), taper dans le terminal : « sudo ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin ».
  10. Puis, rendez-vous à l’adresse http://localhost/ (si vous y étiez déjà, rafraichissez votre page web, à l’aide de la touche F5 par exemple). A cette adresse, vous trouverez sur la page un dossier nommé phpmyadmin. Après avoir cliqué dessus, vous devriez accéder à l’interface graphique de phpmyadmin (et plus précisément à la page d’authentification).
  11. Si jusque là tout s’est bien passé, c’est que le serveur LAMP est bien installé.


Rappels :

  • pour allumer MySQL, il faut taper dans la commande « sudo /etc/init.d/mysql start » (ou « sudo /etc/init.d/mysql restart » pour le rallumer)
  • pour éteindre MySQL, il faut taper dans la commande « sudo /etc/init.d/mysql stop »
  • pour allumer Apache2, il faut taper dans la commande « sudo /etc/init.d/apache2 start » (ou « sudo /etc/init.d/apache2 restart » pour le rallumer)
  • pour éteindre Apache2, il faut taper dans la commande « sudo /etc/init.d/apache2 stop »