Architecture serveur requise
De Wiki.
Le contexte d'application web est celui d'une architecture LAMP : Linux, Apache, MySQL, PHP
Un hébergement dédié ou semi-dédié est préconisé (éventuellement serveur virtuel).
Sommaire |
Exploitation : configuration logicielle
- Système d’exploitation : Système Linux Debian squeeze, ou tout autre distribution Linux stable adaptée à l'architecture LAMP
- Serveur Web : Apache 2.* (Apache 1.3 compatible) avec Mod PHP et CGI
- Langage d'Application Serveur : PHP 5.3.* et supérieur, PHP 7.0
- Base de Données : MySQL 5.0 / 5.1 / 5.5, MariaDB (prévoir un accès PhpMyAdmin)
- Librairie graphique : Imagick (ou a minima GD 2.0.)
- Un MTA configuré (en smtp ou en relais) : Postfix recommandé
Développement : configuration logicielle complémentaire
- Accès SSH au serveur, droits d'accès aux Log Access et Error d'Apache
- Binaire GIT installé sur le serveur pour réaliser des déploiemements
Réglages et autorisations spécifiques
- Configuration PHP/Apache spécifique par fichier .user.ini (directives PHP include_path, auto_prepend_file, auto_append_file)
- Autoriser l'écriture par PHP/Apache de fichiers sur le serveur
- Mise à disposition de 256 Mo de RAM à PHP pour la génération des archives de présentations hors-ligne
- Upload limit relevé à 32 Mo pour autoriser les uploads de médias (photos plein écran, vidéos... )
- Les valeurs de ces deux derniers réglages peuvent être ajustées en regard de la quantité et de la taille des médias gérés par l'application.
Support de configurations hors de nos préconisations
L'application peut être hébergé sur serveur Windows (Architecture IIS/PHP ou Apache/PHP), toutefois la plate-forme - non recommandée - doit être validée par nos techniciens.
Autres bases de données pouvant être supportées (sur base Apache/PHP) : SQL Server, PostgresSQL, Oracle (devis complémentaire, selon versions)
Configuration avancée
Modules binaires compilés :
- moteur de recherche et indexeur plein-texte swish-e http://swish-e.org/
Modules PHP :
- php-curl (libcurl/7.18.2 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.8 libssh2/0.18)
- php-gd
- ImageMagick (optionnel pour support étendu des images)
- FFMPEG (optionnel pour support étendu des vidéos)
Configuration PHP.ini :
output_buffering = 4096 zlib.output_compression = On zlib.output_compression_level = 1 safe_mode = Off max_execution_time = 180 ; Maximum execution time of each script, in seconds max_input_time = 90 ; Maximum amount of time each script may spend parsing request data memory_limit = 128M ; Maximum amount of memory a script may consume error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT display_errors = Off display_startup_errors = Off log_errors = On ignore_repeated_errors = On register_globals = Off post_max_size = 32M upload_max_filesize = 24M allow_url_include = Off
autoriser popen et l'exécution de sendmail
Modules Apache :
alias.conf authz_groupfile.load cgi.load headers.load php5.conf rewrite.load status.conf alias.load authz_host.load dir.conf mime.conf php5.load setenvif.conf status.load auth_basic.load authz_user.load dir.load mime.load proxy.conf setenvif.load authn_file.load autoindex.conf env.load negotiation.conf proxy_http.load ssl.conf authz_default.load autoindex.load expires.load negotiation.load proxy.load ssl.load
Modules complémentaires recommandés :
- webmin
- awstats
- wget
- rsync
- curl
- lynx