; Encodage : UTF-8 ; Attention : Renommer ce fichier en config.ini ; +------------------------------------------------------------------------------------------------------+ ; Général ; ds : Séparateur de dossier ; ps : Séparateur de chemin ; eol : Fin de ligne de fichier ds = DIRECTORY_SEPARATOR ps = PATH_SEPARATOR eol = PHP_EOL ; +------------------------------------------------------------------------------------------------------+ ; URLs ; url_arg_separateur_entree : Le séparateur des arguments d'une url à parser (par défaut, utiliser : "php:ini_get('arg_separator.input')") ; url_arg_separateur_sortie : Le séparateur utilisé pour séparer les arguments d'une URL générée (défaut, utiliser : "php:ini_get('arg_separator.output')") url_arg_separateur_entree = "&" url_arg_separateur_sortie = "&" ; +------------------------------------------------------------------------------------------------------+ ; Débogage ; debogage : Indique si oui ou non on veut afficher le débogage. ; Indique sous quelle forme les méssages de débogage doivent s'afficher : ; - "php:Debug::MODE_ECHO" : le message est affiché en utilisant echo ; - "php:Debug::MODE_NOTICE" : le message est affiché en utilisant une erreur de type notice ; - "php:Debug::MODE_ENTETE_HTTP" : les messages sont envoyés dans un entête HTTP "X_REST_DEBOGAGE". ; - "Autre valeur" : les messages sont formatés puis retournés par la méthode de débogage utilisée. ; debogage_contexte : Indique si oui ou non on veut afficher le contexte de débogage. ; debogage_niveau : Niveau d'erreur à employer pour le code PHP. Voir le manuel de PHP pour les différents niveaux disponibles. debogage = true debogage_mode = "php:Debug::MODE_ECHO" debogage_contexte = false debogage_niveau = 30719 ; +------------------------------------------------------------------------------------------------------+ ; Benchmark ; benchmark_chrono : Indique si oui ou nom on veut afficher le tableau de chronométrage de l'application. (BENCHMARK) benchmark_chrono = true ; +------------------------------------------------------------------------------------------------------+ ; Log ; log_debogage : Indique si oui ou non on veut activer la journalisation des erreurs. ; log_script : Indique si oui (true) ou non (false) les scripts doivent loguer les messages ; log_taille_max : Indique la taille max d'un fichier log (en octets) log_debogage = false log_script = true log_taille_max = 1000000 ; +------------------------------------------------------------------------------------------------------+ ; Chemins, dossiers et fichiers ; fichier_config : Nom des fichiers de config recherché. Défini par défaut dans la classe Config ; chemin_framework : Chemin vers le dossier du framework. Défini par défaut dans la classe Config ; dossier_bibliotheque : Nom du dossier de la bibliotheque de codes de l'application. ; dossier_composants : Nom du dossier des composants graphiques de l'application. ; dossier_configurations : Nom du dossier des controleurs de l'application. ; dossier_controleurs : Nom du dossier des controleurs de l'application. ; dossier_i18n : Nom du dossier des traductions de l'application. ; dossier_modeles : Nom du dossier des modèles de l'application. ; dossier_presentations : Nom du dossier contenant la partie présentation de l'interface : styles, images, scripts et squelettes. ; dossier_squelettes :Nom du dossier des squelettes de l'application. ; dossier_logs : Nom du dossier des logs de l'application. ; dossier_modules : Nom du dossier contenant les modules (sous partie d'une application, scripts ou services web). ; fichier_config = "config%s.ini"; Défini par défaut dans la classe Config ; chemin_framework = "php:dirname(__FILE__).DS"; Défini par défaut dans la classe Config dossier_bibliotheque = bibliotheque dossier_composants = composants dossier_configurations = configurations dossier_controleurs = controleurs dossier_i18n = i18n dossier_modeles = modeles dossier_presentations = presentations dossier_squelettes = squelettes dossier_logs = logs dossier_modules = modules ; chemin_appli :Chemin vers le dossier de l'appli. ; chemin_bibliotheque : Chemin vers le dossier de la bibliotheque de codes de l'application. ; chemin_composants : Chemin vers le dossier des composants graphiques de l'application. ; chemin_configurations : Chemin vers le dossier des configurations de l'application. ; chemin_controleurs : Chemin vers le dossier des controleurs de l'application. ; chemin_i18n : Chemin vers le dossier des traductions de l'application. ; chemin_modeles : chemin vers le dossier des modèles de l'application. ; chemin_presentations : chemin vers le dossier contenant la partie présentation de l'interface : styles, images, scripts et squelettes. ; chemin_squelettes : Chemin vers le dossier des squelettes de l'application. ; chemin_logs : Chemin vers le dossier des logs de l'application. ; chemin_modules : Chemin vers les dossiers spécifiques aux scripts CLI. chemin_appli = "php:Framework::getCheminAppli()" chemin_bibliotheque = "{ref:chemin_appli}{ref:dossier_bibliotheque}{ref:ds}" chemin_composants = "{ref:chemin_appli}{ref:dossier_composants}{ref:ds}" chemin_configurations = "{ref:chemin_appli}{ref:dossier_configurations}{ref:ds}" chemin_controleurs = "{ref:chemin_appli}{ref:dossier_controleurs}{ref:ds}" chemin_i18n = "{ref:chemin_appli}{ref:dossier_i18n}{ref:ds}" chemin_modeles = "{ref:chemin_appli}{ref:dossier_modeles}{ref:ds}" chemin_presentations = "{ref:chemin_appli}{ref:dossier_presentations}{ref:ds}" chemin_squelettes = "{ref:chemin_presentations}{ref:dossier_squelettes}{ref:ds}" chemin_logs = "{ref:chemin_appli}{ref:dossier_logs}{ref:ds}" chemin_modules = "{ref:chemin_appli}{ref:dossier_modules}{ref:ds}" ; +------------------------------------------------------------------------------------------------------+ ; Paramètrage de la base de données. ; bdd_abstraction : abstraction de la base de données. ; bdd_protocole : Protocole de la base de données. ; bdd_serveur : Nom du serveur de bases de données. ; bdd_utilisateur : Nom de l'utilisateur de la base de données. ; bdd_mot_de_passe : Mot de passe de l'utilisateur de la base de données. ; bdd_nom : Nom de la base de données principale. ; bdd_encodage : Encodage de la base de données principale. Normalement le même que l'application mais au format base de ; données : voir ici : http://dev.mysql.com/doc/refman/5.0/en/charset-charsets.html ; et là: http://www.postgresql.org/docs/8.1/static/multibyte.html pour les correspondances bdd_abstraction = pdo bdd_protocole = mysql bdd_serveur = localhost bdd_utilisateur = "" bdd_mot_de_passe = "" bdd_nom = "" bdd_encodage = "utf8" ; +------------------------------------------------------------------------------------------------------+ ; Encodage ; encodage_appli : encodage de l'application, des fichiers php, squelettes de l'application ; encodage_sortie : Encodage des donnés renvoyées au navigateur ; (faire attention à la correspondane avec les .htaccess et les balises meta du html des squelettes) encodage_appli = "UTF-8" encodage_sortie = "UTF-8" ; +------------------------------------------------------------------------------------------------------+ ; I18n ; i18n_url_parametre : nom du paramètre GET contenant la langue demandée ; i18n_langue_defaut : Indique la langue par défaut ; i18n_locale : Indique la locale à utiliser pour le système (alphabet, date, nombre...) ; i18n_systeme_locale : Paramètres indiquant à PHP qu'elle est la locale à utiliser (par défaut français UTF-8). ; i18n_timezone : Indique la zone horaire ; i18n_systeme_timezone : Définit la zone horaire pour le framework et son application i18n_url_parametre = "langue" i18n_langue_defaut = "fr" i18n_locale = "fr_FR.UTF-8" i18n_systeme_locale = "php:setlocale(LC_ALL, '{ref:i18n_locale}')" i18n_timezone = "Europe/Paris" i18n_systeme_timezone = "php:date_default_timezone_set('{ref:i18n_timezone}');" ; +------------------------------------------------------------------------------------------------------+ ; Cache ; ====> (string) stockage_mode : ; Indique le mode de stockage du cache à utiliser parmis : ; - Cache::STOCKAGE_MODE_FICHIER : sous forme d'une arborescence de fichiers et dossier ; - Cache::STOCKAGE_MODE_SQLITE : sous forme d'une base de données SQLite ; ====> (string) stockage_chemin : ; Chemin vers : ; - Cache::STOCKAGE_MODE_FICHIER : le dossier devant contenir l'arborescence. ; - Cache::STOCKAGE_MODE_SQLITE : le fichier contenant la base SQLite. ; ====> (boolean) controle_ecriture : ; - Active / Désactive le controle d'écriture (le cache est lue jute après l'écriture du fichier pour détecter sa corruption) ; - Activer le controle d'écriture ralentira légèrement l'écriture du fichier de cache mais pas sa lecture ; Le controle d'écriture peut détecter la corruption de fichier mais ce n'est pas un système de controle parfait. ; ====> (boolean) mise_en_cache : ; - Active / Désactive la mise en cache ; (peut être très utile pour le débogage des scripts utilisant le cache ; ====> (string) cache_id_prefixe : ; - préfixe pour les identifiant de cache ( = espace de nom) ; ====> (boolean) serialisation_auto : ; - Active / Désactive la sérialisation automatique ; - Peut être utilisé pour sauver directement des données qui ne sont pas des chaines (mais c'est plus lent) ; ====> (int) nettoyage_auto : ; - Désactive / Régler le processus de nettoyage automatique ; - Le processus de nettoyage automatiques détruit les fichier trop vieux (pour la durée de vie donnée) ; quand un nouveau fichier de cache est écrit : ; 0 => pas de nettoyage automatique ; 1 => nettoyage automatique systématique ; x (integer) > 1 => nettoyage automatique toutes les 1 fois (au hasard) sur x écriture de fichier de cache ; ====> (int) duree_de_vie : ; - Durée de vie du cache (en secondes) ; - Si null, le cache est valide indéfiniment. stockage_mode = "php:Cache::STOCKAGE_MODE_SQLITE" stockage_chemin = "php:Fichier::getDossierTmp().DS.'cache.sqlite'" controle_ecriture = "php:TRUE" mise_en_cache = "php:TRUE" cache_id_prefixe = "php:NULL" serialisation_auto = "php:FALSE" nettoyage_auto = 10 duree_de_vie = 3600 ; Si cache de type FICHIER, paramètres supplémentaires : ; =====> (boolean) fichier_verrou : ; - Active / Désactive le verrouillage des fichiers ; - Peut éviter la corruption du cache dans de mauvaises circonstances, mais cela ne fonctionne pas sur des serveur ; multithread et sur les systèmes de fichiers NFS par exemple. ; =====> (boolean) controle_lecture : ; - Activer / désactiver le contrôle de lecture ; - S'il est activé, une clé de contrôle est ajoutée dans le fichier de cache et cette clé est comparée avec celle calculée ; après la lecture. ; =====> (string) controle_lecture_type : ; Type de contrôle de lecture (seulement si le contrôle de lecture est activé). ; Les valeurs disponibles sont: ; - «md5» pour un contrôle md5 (le meilleur mais le plus lent) ; - «crc32» pour un contrôle de hachage crc32 (un peu moins sécurisé, mais plus rapide, un meilleur choix) ; - «adler32» pour un contrôle de hachage adler32 (excellent choix aussi, plus rapide que crc32) ; - «strlen» pour un test de longueur uniquement (le plus rapide) ; =====> (int) dossier_niveau : ; - Permet de réglez le nombre de niveau de sous-dossier que contiendra l'arborescence des dossiers du cache. ; 0 signifie "pas de sous-dossier pour le cache", ; 1 signifie "un niveau de sous-dossier", ; 2 signifie "deux niveaux" ... ; Cette option peut accélérer le cache seulement lorsque vous avez plusieurs centaines de fichiers de cache. ; Seuls des tests spécifiques peuvent vous aider à choisir la meilleure valeur possible pour vous. ; 1 ou 2 peut être est un bon début. ; =====> (int) dossier_umask : ; - Umask pour les sous-dossiers de l'arborescence du cache. ; =====> (string) fichier_prefixe : ; - préfixe pour les fichiers du cache ; - ATTENTION : faite vraiment attention avec cette option, car une valeur trop générique dans le dossier cache du système ; (comme /tmp) peut provoquer des catastrophes lors du nettoyage du cache. ; =====> (int) fichier_umask : ; - Umask pour les fichiers de cache ; =====> (int) metadonnees_max_taille : ; - taille maximum pour le tableau de métadonnées du cache (ne changer pas cette valeur sauf si vous savez ce que vous faite) fichier_verrou = "php:TRUE" controle_lecture = "php:TRUE" controle_lecture_type = "crc32" dossier_niveau = 2 dossier_umask = 0707 fichier_prefixe = "tbf" fichier_umask = 0606 metadonnees_max_taille = 100 ; Si cache de type SQLITE, paramètres supplémentaires : ; ====> (int) defragmentation_auto : ; - Désactive / Régler le processus de défragmentation automatique ; - Le processus de défragmentation automatiques réduit la taille du fichier contenant la base de données ; quand un ajout ou une suppression de cache est réalisée : ; 0 => pas de défragmentation automatique ; 1 => défragmentation automatique systématique ; x (integer) > 1 => défragmentation automatique toutes les 1 fois (au hasard) sur x ajout ou suppression de cache defragmentation_auto = 10 ; +------------------------------------------------------------------------------------------------------+ ; Identifications ; identification : Indiquer ici si l'utilisateur est identifié ou pas. ; Peut utiliser un objet Auth comme ceci : "php:$mon_objet_auth->getAuth()" identification = true ; +------------------------------------------------------------------------------------------------------+ ; Tracer l'IP réelle de l'utilisateur - acces_log ; tracer_ip_source : Indiquer ici si l'IP réelle de l'utilisateur doit être tracée, utilisation ; de l'entête X-Forwarded-For, et d'un module le gérant côté serveur. ; Pour activer, passer sur "php:TRUE". tracer_ip_source = "php:FALSE" ; +------------------------------------------------------------------------------------------------------+ ; Serveur REST ; Les paramètres ci-dessous sont à définir obligatoirement dans votre dossier de services web REST. ; serveur.baseURL : morceau de l'url pour appeler le serveur relative au domaine. ; Exemple : pour http://www.tela-botanica.org/mon_serveur/ mettre : "/mon_serveur/" ; serveur.baseAlternativeURL : (optionnel) sur le même principe que ci-dessus permet d'affecter une deuxième base relative d'url ; (pour gérer des raccourci via htaccess par exemple)