| OS | Serveur Web | Base de données |
|---|---|---|
| GNU/Linux, recommandé : Debian 9 | Apache >= 2.2 / Php > = 5.6 et php = < 7.1 | Postgresql >= 9.0, oracle >= 10g partiellement fonctionnelle |
Activer le module de ré-écriture de php :
sudo a2enmod rewrite
La configuration Apache permet de restreindre les droits de visualisation sur certains types de fichiers depuis le navigateur
Cette configuration est à mettre dans le vhost du serveur Apache.
Ex : Ubuntu 14.04, Apache 2.4.7, php 5.5.9
Options -Indexes
Options FollowSymLinks Includes ExecCGI
<FilesMatch ".*">
Order deny,allow
Deny from all
</FilesMatch>
# Root to allow index.php
<FilesMatch "^$">
Order allow,deny
Allow from all
</FilesMatch>
# Core root
<FilesMatch "^(index|ws_server|static|merged_js|merged_css|reopen|applet_launcher|applet_controller|log)\.php$">
Order allow,deny
Allow from all
</FilesMatch>
# App static files
<FilesMatch "\.(css|js|jpg|jpeg|png|gif|ttf|woff|woff2|svg)$">
Order allow,deny
Allow from all
</FilesMatch>
# App tools files
<FilesMatch "\.(htm|html|jar|jnlp)$">
Order allow,deny
Allow from all
</FilesMatch>
SetEnv MAARCH_TMP_DIR "/tmp"
A partir de Apache 2.4, il faut éditer le fichier /etc/apache2/apache2.conf, et modifier cette partie comme ceci :
<Directory /var/www>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Modules PHP essentiels :
| Extensions | Description |
|---|---|
| php-xsl | Extension XSL implémentant le standard XSL, il effectue des « transformations XSLT » en utilisant la bibliothèque « libxslt » |
| php-xmlrpc | Librairie de support des serveurs et clients XML-RPC |
| php-gettext | Extension d’internationalisation de l'application |
| php-gd | Librairie de création et de manipulation des images |
| php-fpm | Exécution de PHP |
| php-pgsql | Client du SGBDR PostgreSQL pour PHP |
| php-mbstring | Gestion des chaines de caractères |
| php-mcrypt | Librairie permettant de chiffrer des données, pour la signature électronique |
| php-soap | L'extension SOAP est utilisée pour les échanges clients/serveurs SOAP, pour les webservices |
| pear/MIME_type (si PHP < 7) | Permet de contrôler les mime-type des documents |
| pear/SOAP (si PHP < 7) | Utilisé pour les webservices |
| pear/CLITools | Utilisé pour les batchs Maarch en général |
Voir la procédure d'installation de pear ici : http://pear.maarch.org/
Modules PHP optionnels :
| Extensions | Description |
|---|---|
| php-imap | Capture des mails avec MaarchCapture |
| php-curl | Connexion CAS et appels aux webservices externes |
| php-zip | Utilisé pour la fonctionnalité Maarch To Maarch |
Programmes tiers :
| Programme | Utilisation dans l'application | Liens pour le téléchargement sous Windows | Essentiel |
|---|---|---|---|
| p7z-full (7z pour windows) | Compressions pour le module life_cycle | Non | |
| imagemagick (>= 6.7) | Génération des miniatures pdf | http://www.imagemagick.org/script/binary-releases.php | Oui |
| ghostscript | Génération des miniatures pdf | http://ghostscript.com/download/ | Oui |
| wkhtmltopdf | Génération des miniatures pdf | http://wkhtmltopdf.org/downloads.html | Oui |
| default-jre (>= 7) (jre pour windows) | Edition des modèles de documents | Oui | |
| xpdf-utils (poppler-utils pour windows) | Extraction du texte des PDF pour le module full_text | Oui | |
| git | Permet de récupérer les sources de l'application et les dépendances | https://git-scm.com/downloads | Oui |
Dépendances :
L’application Maarch utilise certaines dépendances externes listées ci-dessous. Toutes sont sous licence libre.
Dans la mesure du possible, nous nous efforçons d'utiliser les versions les plus récentes.
Les dépendances sont disponibles à cette adresse : https://labs.maarch.org/maarch/LibsExtMaarchCourrier
| Nom | Version | Utilisation dans l'application |
|---|---|---|
| Chart.js | 1.1.1(1) | Génération de graphiques |
| log4php | 2.1.0(1) | Gestion des logs de l'application |
| Prototype | 1.7.3 | Framework JS |
| Script.aculo.us | 1.9.0 | Framework JS |
| fpdf | 1.7(1) | Génération de pdf avec php |
| fpdi | 1.5.4 | Importe des pdf avec php |
| Phpids | 0.7 | Contrôle les données utilisateur |
| Tafeltree | 1.9.1 | Génération des arborescences |
| Tiny but strong | 3.9.0(1) | Fusion des données dans les modèles de document |
| OpenTBS | 1.9.4(1) | Fusion des données dans les modèles de document |
| Tiny mce | 4.9.11 | Éditeur de texte dans le navigateur |
| Framework Zend | 1.12.1(1) | Gestion des index plein texte |
| Font Awesome | 4.7.0 | Génération des icônes |
| pdftotext | 3.0.4 | Permet de récupérer le texte dans un pdf |
| phpqrcode | 1.1.4 | Génération de QrCode |
| html2text | 1.0 | Transforme un html en texte |
| bootstrap | 3.3.7 | Framework CSS |
| Angular | 5.2.10 | Framework JS |
| jquery | 3.5.1 | Framework JS |
| jquery-nicescroll | 3.6.8 | Personnalisation des scrolls |
| jquery-typeahead | 2.8.0 | Autocompletion |
| tooltipster | 4.2.6 | Personnalisation des titles |
(1) Une version plus récente est disponible mais n'a pas été testée avec le code actuel ou n'est pas compatible.
Recommandations pour le php.ini :
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT
display_errors = On
short_open_tags = On
OS Supportés :
Résolutions :
Navigateurs internet compatibles :
Outils complémentaires sur les postes clients :
| Si vous utilisez Microsoft Word 2007, il faut télécharger le plugin suivant : https://www.microsoft.com/fr-fr/download/details.aspx?id=7 afin de pouvoir utiliser le module de signature et de visa Maarch ! |