Actions

Documentation en français/Installation de Mahara

From Mahara Wiki

< Documentation en français

Traduction non complète ... avis aux amateurs !

Article proche: Upgrading Mahara

Installer Mahara nécessite quelques connaissances basiques du fonctionnement d'une application web. Ce manuel nécessite donc que vous compreniez les bases de la gestion de serveurs web et de bases de données.

Si vous fonctionnez sous Debian/Ubuntu, sachez que bon nombre des logiciels requis peuvent être installé grâce à la commande apt-get. Si vous utilisez une distriution différente de Linux, vous devez être en mesure d'utiliser les outils d'installation spécifiques à cette dernière.

Si vous souhaitez installer Mahara dans une langue autre que l'anglais, vous pouvez installer les differents packs de langues une fois Mahara installé, les instructions relative à l'installation d'une nouvelle langue sont disponibles ci-dessous.

1. Configuration requise

Environement de travail de base

  • Linux
  • PHP 5.1.3+
  • Postgres 8.1+ (recommandé), ou MySQL 5.0.25+. Avec MySQL, les tables InnoDB seront requises ainsi qu'un système d'interclassement en UTF8.
  • Apache 2 (Apache 1 fonctionnera également si nécessaire).

Note : Votre version de MySQL doit etre au minimum la 5.0.25 - Voir http://bugs.mysql.com/bug.php?id=20519 pour un bug avec les version précedentes affectant le bon fonctionnement de Mahara.

Les extensions PHP

  • gd
  • json
  • curl (requis depuis Mahara 1.1. Auparavant nécessaire uniquement pour le support réseau)
  • libxml
  • SimpleXML
  • session
  • pgsql OU mysqli
  • Pour le support réseau : openssl et xmlrpc
  • Optionellement : imagick
  • exim, qui etait necessaire pour Mahara 1.1.0 à 1.1.4, est dorénavant optionel.

Puis-je utiliser un système d'exploitation Windows pour héberger Mahara ?

Les utilisateurs peuvent accéder à Mahara avec un navigateur web standard. Pour l'hébergement, Mahara à été conçu pour Linux, Apache, PHP et les bases de donnée SQL. Très peu d'experimentations ont, à ce jour, été faites dans un environnement Windows. Mahara 1.1 et au delà devraient toutefois pour être installés sous Windows.

Des instructions pour l'installation de Mahara avec Wampserver sont disponibles et devraient vous aider à realiser cette opération.

Windows serat-il supporté dans le futur ?

Nous avons dès à présent entendu parlé d'installations fonctionnelles sous Windows. Vous devriez donc être à même de faire fonctionner Mahara sous Windows sans trop de diffuculté, mais nous ne prenons pas en charge officiellement le support de Mahara sous Windows et ne seront pas en mesure de vous assister en cas de problème.

Et sous un environnement Solaris, Mac, BSD ou autre ?

Les développeurs n'ont pas testé explicitement ces systèmes d'exploitation. Bien que cela puisse fonctionner correctement, vous pourriez rencontrer des problèmes que les développeurs ne pourraient vous aider à résoudre. Si tel est le cas et que vous en identifiez la cause, songez à le publier dans un forum ou ouvrir un rapport d'erreur afin que les autres puissent en profiter !

Et avec un autre serveur web / une autre base de données / un autre PHP ?

Aucun autre serveur web n'a été testé, à vous de voir. Veuillez contacter l'équipe de développement sur #mahara ou sur les forums si vous êtes intéressé pour implémenter le support d'autres bases de données. PHP 5.1+ est requis, toutes les versions postérieures devraient fonctionner.

Puis-je utiliser un hébergement partagé ?

Peut-être. Cela dépend devotre hébergeur, certains désactivent certaines fonctions ou utilisent "safe mode", ce qui peut affecter serieusement le fonctionnement de Mahara. Mahara n'est pas spécifiquement conçu pour les hébergement partagés - toujours étant, nous gardons cela à l'esprit et acceptons la création de correctifs dans cette intention mais l'hébergement partagé, par nature, limite votre champ d'action. Il est donc conseillé de travailler sur un Serveur Privé Virtuel (VPS, Virtual Private Server) ou sur un serveur dédié tant que possible.

Si votre hébergeur a désactivé exec, Mahara 1.0 ne sera pas en mesure de détecter correctement les fichiers images, la génération de miniatures en sera donc affectée. Voyez ce rapport d'erreur pour de plus amples informations. Depuis Mahara 1.1, cela n'est plus un problème mais exec sera sans doute utilisé dans le futur pour d'autres fonctionnalités.

Les hébergeurs paramètrent souvent (bêtement) AllowOverride à None, ce qui a pour effet de désactiver les fichiers .htaccess. Si vous obtenez des erreurs 500 lors de l'installation de votre site, il peut s'avérer nécessaire de commenter les lignes php_flag à l'intérieur de ces fichiers, voire de retirer complètement les fichiers .htaccess en question. Ceci ne réduira pas de façon critique les fonctionnalités, mais si vous êtes forcé de retirer ces fichiers, cela rendra votre site moins performant qu'il n'aurait dû l'être. [ Note : les fichiers .htaccess peuvent être invisibles sous Mac OS X et votre serveur, la meilleure chose à faire (!) est de modifier ces fichiers depuis une machine Windows avant de les envoyer directement sur le serveur. ]

2. Obtenir Mahara.

Vous pouvez télécharger une distribution standard de Mahara, ou obtenir le projet depuis un depot GIT si vous savez comment fonctionne ce dernier :

git clone git://git.mahara.org/git/mahara.git

Si vous passez par GIT, vous pouvez obtenir la version specifique de Mahara qui vous interesse : voyez git.mahara.org pour une liste des version dans notre depot GIT. Par exemple :

git clone git://git.mahara.org/git/mahara.git
 git checkout -b 1.1_STABLE origin/1.1_STABLE

3. Créer la base de données

Vous devez créer une base de données pour Mahara et vous assurer que le serveur web est en mesure de s'y connecter. Les instruction pour la création de cette derniere suivent, si vous avez acces à CPanel ou à un logiciel similaire, vous avez la possibilité de créer la base par l'intermédiaire de celui-ci.

Votre base de données doit etre encodée en UTF8. Les commandes suivantes créent une base UTF8, si vous utilisez CPanel, vous devez vous assurer que la base de données crée est bien en UTF8.

Lignes de commandes pour Postgres:

# Si vous avez à créer un utilisateur de base de données :
  createuser -SRDP (nom d'utilisateur)
  # création de la base :
  createdb -U (nom de l'utilisateur de connection) -EUTF8 (nom de base de données)

Lignes de commandes pour MySQL:

mysql -Uroot
 [entrer un mot de passe]
 create database (nom de base de données) character set UTF8;
 grant all on (nom de base de données).* to 'nom'@'localhost' identified by 'password';

Quel type de base de données dois-je choisir en priorité ?

Les développeurs recommandent PostgreSQL pour une stabilité maximum et le respet de l'intégrité des données. Convenablement configuré, PostgreSQL fournira de meilleures performances que MySQL.

=== Partie non traduite ===

Furthermore, PostgreSQL can do DDL in transactions - that is to say BEGIN; CREATE TABLE foo(bar int); ROLLBACK; actually works how you would expect. This makes the upgrade process a lot safer, if the upgrade fails you know you won't have left your database schema in a mess that can't be automatically upgraded once the original problem is fixed.

We cannot say this enough - even if you have never used PostgreSQL before, if you have the option to use it, then use it. You will save yourself a lot of hassle when your site needs upgrading, and the system will be more stable. Everyone who has used MySQL seriously is aware that sometimes MySQL corrupts tables, and performs badly under high load. PostgreSQL has none of these problems.

Here is a forum thread with a detailed explanation of this recommendation, and examples of where using Postgres is advantageous for Mahara.

=== Partie non traduite ===


4. Installation et configuration du programme.

Configuration PHP

Vous devez vous assurer que magic_quotes_gpc et register_globals sont à off. Mahara vous avertira de toute autre configuration représentant un risque quel qu'il soit lors de son fonctionnement.

Mahara est également livré par défaut avec un fichier .htaccess qui s'assure que les mauvais paramètres soient bien désactivés.

Installation des fichiers Mahara

Copier le contenu du dossier htdocs/ sur votre serveur web :

  • Copier le répertoire en entier et le renommer dans quelque chose du genre 'mahara' - votre site apparaitra alors comme cela : exemple.org/mahara/; ou
  • Copier le contenu du repertoire htdocs/ au niveau superieur du répertoire public (souvent appelé htdocs ou public_html) de votre serveur web, votre site apparaitra alors comme cela : example.org

Configuration de Apache

=== Partie non traduite ===

If you're on shared hosting, you probably are not able to change this, so you can ignore this section.

For others, the simplest of Apache VirtualHost configurations will be sufficient:

         ServerName example.org         DocumentRoot /path/to/mahara/htdocs          ErrorLog /var/log/apache2/mahara-1-1-stable.error.log         CustomLog /var/log/apache2/mahara-1-1-stable.access.log combined 

Please note that your apache configuration should contain no ServerAliases. Mahara expects to be accessed through ONE URL. This gives certainty that cookies are set for the right domain, and also means that SSL certificates for the networking functionality can be generated for this one URL. If you use a server alias, you should expect to see problems like having to log in twice, and potentially SSO between your site and others breaking.

However, you can still make both example.org and www.example.org work for your site, if you use another VirtualHost directive:

     ServerName www.example.org     # You can add ServerAliases here if you want more than one URL to redirect to your main site     # ServerAlias foo.example.org      Redirect Permanent / http://example.org/ 


Mahara Configuration

You need to make a directory (outside the document root) and ensure the web server user has write access to it. This is where Mahara will store data like uploaded files, and is referred to as dataroot by Mahara. You also need to make sure that you can somehow write to this directory also - whether by having root access or otherwise.

In htdocs/ is config-dist.php. You need to make a copy of this called config.php. You then need to go through the file and make changes where appropriate. The file is commented, and there are not many settings to change. However, take special note of the following settings:

  • database connection details — ensure you include the database connection details by inserting the proper values for $cfg->dbname, $cfg->dbuser, $cfg->dbpass, $cfg->dbprefix.
    • Note: You do not need to set dbprefix, unlike Moodle. Try not using it first, and see if it works. If you find you do need it, you may find it best to leave dbprefix empty and add the prefix directly to $cfg->dbname, $cfg->dbuser values.
  • dataroot - set this to the filesystem path to the directory you made that the web server user can write to. Please note this is a filesystem path, which on linux will look like /path/to/your/directory and on windows will look like C:\path\to\your\directory. This is NOT a web address such as http://example.org/maharadata!
  • directorypermissions - if you're on a server where you do not have root access, you should change this from 0700 to 0777 or similar, so that you can download your dataroot later for backup purposes, and install language packs.

Cron Job

You will need to set up a cron job to hit htdocs/lib/cron.php every minute. Mahara implements its own cron internally, so hitting cron every minute is sufficient to make everything work.

If you don't set up the cron job, you will find that RSS feeds will not update, and some email notifications won't be sent out, such as forum post notifications.

You can set it up using the command line 'php' command to run the cron script, or by using a command line web browser such as lynx or w3m.

Something like the following in a crontab file will be sufficient:

* * * * * www-data php /path/to/mahara/htdocs/lib/cron.php

5. Run the Web Based Installer

Once you have set up your config.php, you should now be able to navigate to the Mahara installation using your web browser. This will pop up a page stating the conditions of using Mahara, and will ask for agreement. If you agree with the conditions, click "agree" and Mahara will install itself into your database. Click continue, and you should now be at a login screen.

Log into the system with user "admin", password "mahara". Congratulations!

What if the installation process breaks with an error?

Sometimes this can happen. Normally this is because of some misconfiguration in your system - for example, you haven't granted your database user permission to create tables, or you aren't using a high enough version of your database (see the dependencies). Sometimes, it's because of a bug in the Mahara installer. In order to find out, you will need to check the error log for your webserver. Mahara dumps detailed information in there where a bug occurs.

The message might show you that the problem is with your configuration, but if it looks like a problem with Mahara, you should make a bug report with the information from your logs, so we can fix it.

If you were able to fix the problem, you might need to drop and re-create your database again, so you're starting the installation again without any of the previously installed tables in the way.

6. Optionnel : installation d'autres langues

Mahara est installé par défaut uniquement en anglais, mais vous pouvez ajouter le support d'autres langues. Les fichiers contenant les traductions sont à installer dans le répertoire des données, dans un dossier dénommé « langpacks ».

Pour ajouter une nouvelle langue à l'interface :

  1. Vérifiez que vous ayez bien un dossier langpacks à l'intérieur de votre répertoire de données (le « dataroot »). Il a du être créé automatiquement pour vous.
  2. Téléchargez l'archive correspondant à langue que vous souhaitez installer depuis la page des packs de langue.
  3. Décompressez l'archive TGZ. Si le dossier obtenu porte un nom du type mahara-lang-xx renommez-le en xx.utf8.
  4. Déplacez le dossier ainsi obtenu dans le dossier langpacks à l'intérieur de votre répertoire de données.

Maintenant vous pouvez vous rendre sur la page d'administration de votre site Mahara pour choisir la langue à utiliser par défaut. Les utilisateurs pourront également choisir la langue de leur interface.

Troubleshooting

 If you are having problems installing Mahara, please check out the Installation Instructions Troubleshooting Page for answers to some common problems.

=== Partie non traduite ===

==