C. Lancement du site
- Configuration du fichier config
- Problème pouvant survenir ...
- Lancement de la partie paramétrage
- Paramètres avancées du fichier de configuration
- Mise à jour de version
Configuration du fichier config
Ouvrir le fichier de configuration dans le dossier Archimage2/config/
Il se nomme config_template.txt il faut le compléter puis le renommer en config.php
sudo cp /var/www/html/archimage_26.5/Archimage2/config/config_example.txt /var/www/html/archimage_26.5/Archimage2/config/config.php
sudo chown -R www-data:www-data /var/www/html/archimage_26.5/
Il est important de correctement saisir la partie URL et SQL afin que le site puisse se lancer. (jusqu'a la ligne 30).
Pour cela il faut l'ouvrir :
sudo nano /var/www/html/archimage_26.5/Archimage2/config/config.php
Le reste est optionnel et les valeurs par défaut devrait suffire. Nous détaillerons toutes ces options ici.
<?php declare(strict_types=1);
//##############################################################################
//
// FRAMEWORK OPTIONS
//
//##############################################################################
// Application name used internally by the framework.
ParamManager::getInstance()->app_name="Archimage";
// Server name displayed or reused by the application.
ParamManager::getInstance()->server_name="Archimage";
// Public site title displayed in pages and headers.
ParamManager::getInstance()->site_title="ARCHIMAGE";
// Enable or disable debug mode; keep false on production servers.
ParamManager::getInstance()->debug=false;
// Name of the PHP session cookie used by the application.
ParamManager::getInstance()->site_session_name="ARCHIMAGE_SESSION";
// Main public URL of the Archimage instance.
ParamManager::getInstance()->server_url="https://archimage.com/";
// Root URL of the public site.
ParamManager::getInstance()->site_root="https://archimage.com/";
// URL of the main action endpoint; keep /action.php at the end.
ParamManager::getInstance()->site_action="https://archimage.com/action.php";
//##############################################################################
//
// SQL DATABASE OPTIONS
//
//##############################################################################
// SQL engine used by Archimage; supported values are Sql::$MYSQL or Sql::$MARIADB.
ParamManager::getInstance()->sql_engine=Sql::$MYSQL; /* Sql::$MARIADB */
// Database server hostname or IP address.
ParamManager::getInstance()->sql_host="localhost";
// Database user used by Archimage.
ParamManager::getInstance()->sql_user="archimage-user";
// Database name used by Archimage.
ParamManager::getInstance()->sql_database="archimage-database";
// Password of the database user.
ParamManager::getInstance()->sql_pass="password";
//##############################################################################
//
// EMAIL OPTIONS
//
//##############################################################################
// Email address receiving technical errors and application alerts.
ParamManager::getInstance()->error_email="error@email.com";
// Default public email address displayed by the application.
ParamManager::getInstance()->public_email="public@email.com";
// Email address used for the public contact form.
ParamManager::getInstance()->add("CONTACT_EMAIL","contact@email.com");
// Email transport method; common values are smtp, gmail, or null.
ParamManager::getInstance()->email_transport="smtp";
// Sender email address used by the application.
ParamManager::getInstance()->email_mail="mail@email.com";
// SMTP authentication username.
ParamManager::getInstance()->email_username="username";
// SMTP authentication password.
ParamManager::getInstance()->email_password="password";
// Optional IMAP mailbox used to store sent emails; leave empty to disable.
ParamManager::getInstance()->email_server=""; // Example: {email.com:993/imap/ssl/novalidate-cert}
// SMTP port used for outgoing emails.
ParamManager::getInstance()->email_port="587"; // Common values: 25, 465, 587.
// SMTP encryption mode; use tls, ssl, or null depending on the server.
ParamManager::getInstance()->email_encryption="ssl";
// SMTP authentication mode; use plain, login, cram-md5, ntlm, or null.
ParamManager::getInstance()->email_auth_mode="login";
// Verify the SMTP server certificate; set false only for self-signed certificates.
ParamManager::getInstance()->email_verify_peer="false";
// SMTP server hostname.
ParamManager::getInstance()->email_smtp_server="email.com";
//##############################################################################
//
// TEMPORARY FILES AND LOG DIRECTORIES
//
//##############################################################################
// Temporary directory used during file uploads.
ParamManager::getInstance()->add("TMP_UPLOAD_DIR","/var/www/archimage_dir/tmp_upload/");
// Directory where application logs are written.
ParamManager::getInstance()->log_directory="/var/www/archimage_dir/logs/";
// Directory where email logs or stored emails are written.
ParamManager::getInstance()->log_dir_mail="/var/www/archimage_dir/mails/";
//##############################################################################
//
// FILE REPOSITORY AND IIIF OPTIONS
//
//##############################################################################
// Main storage directory for archival files; ensure enough disk space is available.
ParamManager::getInstance()->add("REPOSITORY","/var/www/archimage_dir/repository");
// IIIF access policy: 0 = public, 1 = authenticated users only, 2 = disabled.
ParamManager::getInstance()->add("IIIF_ACCESS","0");
// Public URL of the IIIF image service.
ParamManager::getInstance()->add("IIIF_URL","https://archimage.com/iiif/");
// The IIIF URL must also be configured in the web server virtual host.
//##############################################################################
//
// LOCAL FILES AND DEFAULT MEDIA OPTIONS
//
//##############################################################################
// Default image displayed when a file is missing.
ParamManager::getInstance()->add("IMAGE_NOT_FOUND",__DIR__.DIRECTORY_SEPARATOR."image_not_found.jpg");
// Default image displayed when a file is not accessible because of rights.
ParamManager::getInstance()->add("IMAGE_NOT_ACCESSIBLE",__DIR__.DIRECTORY_SEPARATOR."image_not_accessible.jpg");
// Font used by the image processing system for watermarks.
ParamManager::getInstance()->add("FONT_WATERMARK",__DIR__.DIRECTORY_SEPARATOR."FreeSans.ttf");
// Default image used for audio files.
ParamManager::getInstance()->add("IMAGE_DEFAULT_AUDIO",__DIR__.DIRECTORY_SEPARATOR."image_audio.jpg");
// Default image used for video files.
ParamManager::getInstance()->add("IMAGE_DEFAULT_VIDEO",__DIR__.DIRECTORY_SEPARATOR."image_video.jpg");
// Default image used for text documents.
ParamManager::getInstance()->add("IMAGE_DEFAULT_TEXT",__DIR__.DIRECTORY_SEPARATOR."image_text.jpg");
// Default image used for spreadsheet files.
ParamManager::getInstance()->add("IMAGE_DEFAULT_SPREADSHEET",__DIR__.DIRECTORY_SEPARATOR."image_spreadsheet.jpg");
// Default image used for 3D files.
ParamManager::getInstance()->add("IMAGE_DEFAULT_3D",__DIR__.DIRECTORY_SEPARATOR."image_3d.jpg");
// Default image used for manuscript archive records.
ParamManager::getInstance()->add("IMAGE_DEFAULT_AM",__DIR__.DIRECTORY_SEPARATOR."image_am.jpg");
// Default image used for estampage records.
ParamManager::getInstance()->add("IMAGE_DEFAULT_EST",__DIR__.DIRECTORY_SEPARATOR."image_estampage.jpg");
// Default image used for photograph records.
ParamManager::getInstance()->add("IMAGE_DEFAULT_PHOTO",__DIR__.DIRECTORY_SEPARATOR."image_photo.jpg");
// Default image used for planothèque records.
ParamManager::getInstance()->add("IMAGE_DEFAULT_PLANO",__DIR__.DIRECTORY_SEPARATOR."image_plano.jpg");
//##############################################################################
//
// EXTERNAL DATA STORAGE AND API OPTIONS
//
//##############################################################################
// Enable or disable the EFA external API integration.
ParamManager::getInstance()->add("EFA_API","0");
// URL of the JSON API used for missions data.
ParamManager::getInstance()->add("MISSIONS_API","");
// URL of the JSON API used for manifestations or events data.
ParamManager::getInstance()->add("MANIFESTATIONS_API","");
// URL of the Chronique API.
ParamManager::getInstance()->add("CHRONIQUE_API","");
// URL of the ONIX export used for publications.
ParamManager::getInstance()->add("PUBLICATIONS_API","");
// Token used to access protected data exports.
ParamManager::getInstance()->add("DATA_API_TOKEN","");
// Base URL of the IdRef API.
ParamManager::getInstance()->add("IDREF_API","https://www.idref.fr");
//##############################################################################
//
// DATACITE DOI OPTIONS
//
//##############################################################################
// Base URL of the DataCite API; use the production URL outside test environments.
ParamManager::getInstance()->add("DATACITE_API", "https://api.test.datacite.org"); // Production: https://api.datacite.org
// Base URL used to resolve DOI handles.
ParamManager::getInstance()->add("DATACITE_BASE_URL", "https://handle.test.datacite.org/"); // Production: https://doi.org/
// URL of the DataCite hosted pages interface.
ParamManager::getInstance()->add("DATACITE_HOSTED_PAGES", "https://doi.test.datacite.org/dois/"); // Production: https://doi.datacite.org/dois/
// DOI prefix assigned by DataCite.
ParamManager::getInstance()->add("DATACITE_PREFIX", "");
// DataCite account username.
ParamManager::getInstance()->add("DATACITE_USER", "");
// DataCite account password.
ParamManager::getInstance()->add("DATACITE_PASSWORD", "");
// Institution-specific DataCite configuration value.
ParamManager::getInstance()->add("DATACITE_EFE", "");
// Default DOI suffix or suffix prefix used by the application.
ParamManager::getInstance()->add("DATACITE_SUFFIX", "");
// Contact email used for DOI-related metadata.
ParamManager::getInstance()->add("DATACITE_EMAIL", "");
// Default author used when no specific author is available.
ParamManager::getInstance()->add("DATACITE_DEFAULT_AUTHOR", "");
//##############################################################################
//
// PUBLIC TEMPLATE AND ANALYTICS OPTIONS
//
//##############################################################################
// Public site template directory name located in Archimage2/template/.
ParamManager::getInstance()->add("TEMPLATE_STATIC_HTML","DEFAULT");
// Matomo analytics server URL.
ParamManager::getInstance()->add("MATOMO_URL","");
// Matomo site identifier.
ParamManager::getInstance()->add("MATOMO_ID","");
//##############################################################################
//
// LEAFLET MAP OPTIONS
//
//##############################################################################
// Default height of standard Leaflet maps in pixels.
ParamManager::getInstance()->add("LEAFLET_HEIGHT","400");
// Maximum zoom level allowed on Leaflet maps.
ParamManager::getInstance()->add("LEAFLET_MAX_ZOOM","19");
// Default zoom level used when a map is opened.
ParamManager::getInstance()->add("LEAFLET_DEFAULT_ZOOM","6");
// Default latitude used to center maps.
ParamManager::getInstance()->add("LEAFLET_DEFAULT_CENTER_X","37.39");
// Default longitude used to center maps.
ParamManager::getInstance()->add("LEAFLET_DEFAULT_CENTER_Y","25.26");
// Default geometry color used on maps.
ParamManager::getInstance()->add("LEAFLET_GEO_COLOR","#6B82AC");
// Default geometry line weight.
ParamManager::getInstance()->add("LEAFLET_GEO_WEIGHT","1");
// Default geometry opacity.
ParamManager::getInstance()->add("LEAFLET_GEO_OPACITY","0.1");
// Private marker threshold for very large result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PRIVATE_TOO_LARGE","100000");
// Private marker threshold for large result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PRIVATE_LARGE","50000");
// Private marker threshold for medium result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PRIVATE_MEDIUM","10000");
// Private marker threshold for small result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PRIVATE_SMALL","500");
// Private marker threshold for very small result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PRIVATE_VERY_SMALL","50");
// Public marker threshold for very large result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PUBLIC_TOO_LARGE","10000");
// Public marker threshold for large result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PUBLIC_LARGE","3000");
// Public marker threshold for medium result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PUBLIC_MEDIUM","500");
// Public marker threshold for small result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PUBLIC_SMALL","100");
// Public marker threshold for very small result sets.
ParamManager::getInstance()->add("LEAFLET_MARKER_PUBLIC_VERY_SMALL","10");
// Height of Leaflet maps displayed in search pages.
ParamManager::getInstance()->add("LEAFLET_RESEARCH_HEIGHT","600");
// Color used for level 0 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_0","#6B82AC");
// Line weight used for level 0 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_0_W","1");
// Opacity used for level 0 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_0_O","0.1");
// Color used for level 1 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_1","#6B82AC");
// Line weight used for level 1 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_1_W","1");
// Opacity used for level 1 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_1_O","0.1");
// Color used for level 2 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_2","#A2D5CD");
// Line weight used for level 2 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_2_W","8");
// Opacity used for level 2 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_2_O","0.5");
// Color used for level 3 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_3","#74C796");
// Line weight used for level 3 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_3_W","5");
// Opacity used for level 3 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_3_O","0.7");
// Color used for level 4 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_4","#495D63");
// Line weight used for level 4 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_4_W","1");
// Opacity used for level 4 sector geometries.
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_4_O","1");
//##############################################################################
//
// PUBLIC RECORD DISPLAY OPTIONS
//
//##############################################################################
// Open the periods block by default on public records; 1 = opened, 0 = closed.
ParamManager::getInstance()->add("FICHE_PUBLIQUE_PERIODES_EXPAND","1");
// Display mode for period links; 0 = hidden, 1 = full URL, 2 = icon only.
ParamManager::getInstance()->add("FICHE_PUBLIQUE_PERIODES_LIENS","2");
// Open the sectors block by default on public records; 1 = opened, 0 = closed.
ParamManager::getInstance()->add("FICHE_PUBLIQUE_SECTEURS_EXPAND","1");
//##############################################################################
//
// MANUSCRIPT ARCHIVES OPTIONS
//
//##############################################################################
// Label format for manuscript archives; supported values include REFERENCE, LEGENDE, or BOTH.
ParamManager::getInstance()->add("AM_LABEL","BOTH");
// Display type for manuscript archives; supported values include NORMAL or NONE.
ParamManager::getInstance()->add("AM_TYPE","NONE");
// Display the full manuscript archive tree in the record page; 1 = enabled.
ParamManager::getInstance()->add("AM_TREE_FULL","1");
//##############################################################################
//
// AUTHORITY AND DESCRIPTION FIELD OPTIONS
//
//##############################################################################
// Author display mode; NORMAL uses local display, IDREF uses IdRef-based display.
ParamManager::getInstance()->add("AUTEUR_FORME","NORMAL");
// Optional custom label for description field desc1.
//ParamManager::getInstance()->add("desc1","Example field name");
// Optional custom type for desc1; supported values include Int, Text, and TextArea.
//ParamManager::getInstance()->add("desc1Type","Text");
// Optional custom label for description field desc2.
//ParamManager::getInstance()->add("desc2","Example field name");
// Optional custom type for desc2; supported values include Int, Text, and TextArea.
//ParamManager::getInstance()->add("desc2Type","Int");
// Custom description fields can be configured from desc1 to desc20.
//##############################################################################
//
// DUBLIN CORE EXPORT OPTIONS
//
//##############################################################################
// Default Dublin Core source value.
ParamManager::getInstance()->add("DC_SOURCE","Institution Archive department");
// Default Dublin Core publisher value.
ParamManager::getInstance()->add("DC_PUBLISHER","Institution Publisher");
// Default Dublin Core language code.
ParamManager::getInstance()->add("DC_DEFAULT_LANGUAGE","en");
//##############################################################################
//
// EAD EXPORT OPTIONS
//
//##############################################################################
// Default EAD contributor value.
ParamManager::getInstance()->add("EAD_CONTRIBUTOR","Institution contributor");
// Default EAD title value.
ParamManager::getInstance()->add("EAD_TITLE","Institution Archive department catalog");
// EAD header site title.
ParamManager::getInstance()->add("EAD_HEADER_SITE_TITLE","");
// EAD header profile description.
ParamManager::getInstance()->add("EAD_HEADER_PROFILE_DESC","");
// EAD identifier for the institution or catalog.
ParamManager::getInstance()->add("EAD_IDENTIFIER","");
// EAD country code.
ParamManager::getInstance()->add("EAD_COUNTRY_CODE","");
// EAD repository code.
ParamManager::getInstance()->add("EAD_REPOSITORY_CODE","");
// EAD corporate name of the repository or institution.
ParamManager::getInstance()->add("EAD_CORPNAME","");
// EAD source statement.
ParamManager::getInstance()->add("EAD_SOURCE","");
// EAD source subject.
ParamManager::getInstance()->add("EAD_SOURCE_SUBJECT","");
// EAD authority number.
ParamManager::getInstance()->add("EAD_AUTH_NUMBER","");
// Street address used in EAD exports.
ParamManager::getInstance()->add("EAD_ADDRESS_STREET","");
// Postal code and city used in EAD exports.
ParamManager::getInstance()->add("EAD_ADDRESS_CODE_CITY","");
// Country used in EAD exports.
ParamManager::getInstance()->add("EAD_ADDRESS_COUNTRY","");
// Phone number used in EAD exports.
ParamManager::getInstance()->add("EAD_ADDRESS_PHONE","");
// Email address used in EAD exports.
ParamManager::getInstance()->add("EAD_ADDRESS_EMAIL","");
// EAD access restriction statement; extref links are allowed.
ParamManager::getInstance()->add("EAD_ACCESS_RESTRICT","");
// First EAD creation profile line.
ParamManager::getInstance()->add("EAD_CREATION_PROFILE_1","");
// Second EAD creation profile line.
ParamManager::getInstance()->add("EAD_CREATION_PROFILE_2","");
// Default ISO language code used in EAD exports.
ParamManager::getInstance()->add("EAD_DEFAULT_LANGUAGE_ISO","en");
// Default language label used in EAD exports.
ParamManager::getInstance()->add("EAD_DEFAULT_LANGUAGE_LABEL","");
// EAD genreform type.
ParamManager::getInstance()->add("EAD_GENREFORM_TYPE","");
// EAD genreform label.
ParamManager::getInstance()->add("EAD_GENREFORM_LABEL","");
// EAD geographic name role.
ParamManager::getInstance()->add("EAD_GEOGNAME_ROLE","");
// EAD origination corporate name for site records.
ParamManager::getInstance()->add("EAD_SITE_CORPNAME_ORIGINATION","");
// EAD scope and content text for site records.
ParamManager::getInstance()->add("EAD_SITE_SCOPE_CONTENT","");
// EAD accruals text for site records.
ParamManager::getInstance()->add("EAD_SITE_ACCRUALS","");
// Prefix used for mission-related EAD site entries.
ParamManager::getInstance()->add("EAD_SITE_MISSION_PREFIX","");
// Prefix used for decade-related EAD site entries.
ParamManager::getInstance()->add("EAD_SITE_DECENNIE_PREFIX","");
// Prefix used for year-related EAD site entries.
ParamManager::getInstance()->add("EAD_SITE_ANNEE_PREFIX","");
// EAD arrangements statement for site records.
ParamManager::getInstance()->add("EAD_SITE_ARRANGEMENTS","");
// Repository URL used in EAD site records.
ParamManager::getInstance()->add("EAD_SITE_URL_REPOSITORY","");
// Genreform label used in EAD site records.
ParamManager::getInstance()->add("EAD_SITE_GENREFORM_LABEL","");
// Default placeholder used when a date is missing in EAD exports.
ParamManager::getInstance()->add("EAD_DEFAULT_DATE_NOT_SET","_Date_not_set");
// Default placeholder used when a mission is missing in EAD exports.
ParamManager::getInstance()->add("EAD_DEFAULT_MISSION_NOT_SET","mission_not_specified");
// Default placeholder used when a sector is missing in EAD exports.
ParamManager::getInstance()->add("EAD_DEFAULT_SECTEUR_NOT_SET","sector_not_specified");
//##############################################################################
//
// RIGHTS, LICENCE, DOWNLOAD AND IIIF METADATA OPTIONS
//
//##############################################################################
// Licence statement displayed for descriptions.
ParamManager::getInstance()->add("LICENCE_DESCRIPTIONS","Licence....");
// Enable liasses support for IFAO-specific workflows; 0 = disabled, 1 = enabled.
ParamManager::getInstance()->add("ACTIVATE_LIASSES","0");
// Enable proxying of ONIX publication images; 0 = disabled, 1 = enabled.
ParamManager::getInstance()->add("PUBLICATIONS_IMG_PROXY","0");
// Title displayed above the download message.
ParamManager::getInstance()->add("DOWNLOAD_MESSAGE_TITLE","");
// Download message displayed to users.
ParamManager::getInstance()->add("DOWNLOAD_MESSAGE","");
// Attribution text included in IIIF manifests.
ParamManager::getInstance()->add("IIIF_ATTRIBUTION","Archimage Licensed");
// Licence URL included in IIIF manifests.
ParamManager::getInstance()->add("IIIF_LICENCE","http://creativecommons.org/licenses/by/4.0/");
// Salt used for consultant API keys; leave empty to use the default value.
ParamManager::getInstance()->add("API_KEY","");
//##############################################################################
//
// PUBLIC SEARCH OPTIONS
//
//##############################################################################
// Optional comma-separated list of public search modules to disable.
//ParamManager::getInstance()->add("DESACTIVATE_SEARCH","1,2,3,4");
/*
Search module identifiers:
RECHERCHE_SIMPLE=1;
RECHERCHE_AVANCEE=2;
RECHERCHE_INVENTAIRE=3;
RECHERCHE_AM=4;
RECHERCHE_GEO=5;
RECHERCHER_XLS=6;
COLLECTION_ARCHIVES=7;
RECHERCHE_PHOTO_GEO=8;
RECHERCHE_MISSIONS=9;
RECHERCHE_SECTEUR_GEO=10;
RECHERCHE_PUBLICATIONS=11;
RECHERCHE_DERNIERES_MODIFICATIONS=12;
*/
//##############################################################################
//
// ADMIN PANEL STYLE OPTIONS
//
//##############################################################################
// Main color used by the administration interface.
StyleManager::getInstance()->main_colour="#6B82AC";
// Secondary color used by the administration interface.
StyleManager::getInstance()->colour_2="#003459";
// Third color used by the administration interface.
StyleManager::getInstance()->colour_3="#007EA7";
// Primary font color used by the administration interface.
StyleManager::getInstance()->font_colour_1="";
// Secondary font color used by the administration interface.
StyleManager::getInstance()->font_colour_2="";
// Primary link color used by the administration interface.
StyleManager::getInstance()->link_colour_1="";
// Hover color for primary links.
StyleManager::getInstance()->link_colour_1_hover="";
// Secondary link color used by the administration interface.
StyleManager::getInstance()->link_colour_2="";
// Hover color for secondary links.
StyleManager::getInstance()->link_colour_2_hover="";
//##############################################################################
//
// REDIS CACHE OPTIONS
//
//##############################################################################
// Redis can be used as a cache backend to improve performance.
// Redis server hostname.
//ParamManager::getInstance()->redis_hostname='';
// Redis server port.
//ParamManager::getInstance()->redis_port='';
// Redis authentication username.
//ParamManager::getInstance()->redis_username='';
// Redis authentication password.
//ParamManager::getInstance()->redis_password='';
// Redis database index.
//ParamManager::getInstance()->redis_dbindex='';
// Redis connection timeout.
//ParamManager::getInstance()->redis_timeout='';
// Redis read timeout.
//ParamManager::getInstance()->redis_read_timeout='1.5';
// Redis retry interval.
//ParamManager::getInstance()->redis_retry_interval='';
//##############################################################################
//
// IMAGE CACHE, CONNECTORS AND ENGINE OPTIONS
//
//##############################################################################
// Optional IIIF cache directory used to improve image delivery performance.
//ParamManager::getInstance()->add("IIIF_CACHE_DIRECTORY","/var/www/archimage_dir/iiif_cache/");
// Enable the FranceArchives page using the OAI-PMH connector; 0 = disabled, 1 = enabled.
//ParamManager::getInstance()->add("FranceArchives","0");
// Image processing engine used by Archimage; supported values are vips, imagick, or gd.
ParamManager::getInstance()->add("IMAGE_ENGINE","vips");
//##############################################################################
//
// LANGUAGE AND ROUTING OPTIONS
//
//##############################################################################
// Enabled interface languages, separated by commas.
ParamManager::getInstance()->add("LANGUAGES","fr"); // Example: fr,en,es,gr,it.
// Default interface language; use auto to detect it automatically.
ParamManager::getInstance()->add("DEFAULT_LANG","fr");
// Route identifier used in public URLs.
KRoute::overideKrouteIdentifier("r");
//##############################################################################
//
// SECURITY AND PROXY OPTIONS
//
//##############################################################################
// Enable or disable user impersonation in the administration interface.
//ParamManager::getInstance()->impersonate=true;
// Trusted reverse proxy IP address used to resolve the real client IP.
//ParamManager::getInstance()->trusted_proxy="internal-ip";
Problème pouvant survenir ...
-
Problème de configuration des sessions
PHP Notice: session_start(): ps_files_cleanup_dir: opendir(/var/lib/php/session) failed: Permission denied (13)
Ce problème peut survenir sur les distributions sous Debian.
sudo chown www-data:www-data /var/lib/php/sessions/ -Rf
-
Problème d'espace lors des transformations des images VIPS
libvips error: wbuffer_write: write failed system error: No space left on device wbuffer_write: write failed system error
Le répertoire /tmp utilisé par défaut pour la conversion des fichiers images est trop petit.
Pour cela on peut demander à VIPS d'utiliser plus de RAM ou bien d'utiliser un autre dossier ayant plus d'espace disponible
Pour cela dans le ficher apache.conf ou bien pour FPM le fichier www.conf veuillez utiliser ces options :
# Garder en Ram les fichiers plus petit que 500M
env[VIPS_DISC_THRESHOLD] = 500m
Lancement de la partie paramétrage
Se rendre sur l'URL spécifié lors de la configuration du serveur Web : dans notre exemple site-archimage.com
La réussite de l'affichage de la page d'installation validera votre configuration de votre serveur Web.
L'installation consistera en 4 étapes:
1. Vérification de l'installation de PHP et des extensions
2. Vérification des permissions des dossiers
3. Vérification des accès et mise en place de la base de données
4. Création du compte administrateur
À cette étape il faudra supprimer le fichier install.php situé dans le repertoire actif du site web :
sudo rm /var/www/html/archimage_26.5/Archimage2/www/install.php
Puis modifier les premières lignes du fichier index pour commenter ou supprimer la ligne d'inclusion du fichier install.php
sudo nano /var/www/html/archimage_26.5/Archimage2/www/index.php
de cette façon :
<?php declare(strict_types=1);
//INSTALL REMOVE THIS
require_once("install.php");
//####################
en
<?php declare(strict_types=1);
//INSTALL REMOVE THIS
//require_once("install.php");
//####################
Enregistrer avec Ctrl O puis Ctrl X pour quitter.
Vous pouvez cliquer maintenant sur l'index.php.
Et vous rendre sur la suite de la configuration.
Paramètres avancées du fichier de configuration
Le fichier Archimage2/config/config.php contient les principaux paramètres techniques de l’application Archimage.
Il permet d’adapter une instance d’Archimage à son environnement d’installation : nom du site, URL publiques, base de données, envoi des courriels, stockage des fichiers, accès IIIF, intégrations externes, options cartographiques, exports documentaires, cache, langues et paramètres de sécurité.
Voir le fichier config.php commenté ici.
Ce fichier s’adresse principalement aux administrateurs système, aux développeurs et aux utilisateurs avancés chargés de maintenir ou d’adapter une instance Archimage.
Attention
Ce fichier peut contenir des informations sensibles, notamment les mots de passe SQL, SMTP, Redis ou DataCite. Il ne doit pas être exposé publiquement et ne doit jamais être copié dans une documentation sans anonymisation préalable.
1. Options générales de l’application
Ces paramètres définissent l’identité générale de l’instance Archimage.
| Paramètre | Description |
|---|---|
app_name |
Nom interne de l’application utilisé par le framework. |
server_name |
Nom du serveur ou de l’instance affiché ou réutilisé par l’application. |
site_title |
Titre public du site affiché dans les pages et en-têtes. |
debug |
Active ou désactive le mode débogage ; doit rester à false en production. |
site_session_name |
Nom du cookie de session PHP utilisé par l’application. |
server_url |
URL principale publique de l’instance Archimage. |
site_root |
URL racine du site public. |
site_action |
URL du point d’entrée principal des actions ; doit conserver /action.php. |
Exemple :
ParamManager::getInstance()->server_url="https://archimage.com/";
ParamManager::getInstance()->site_root="https://archimage.com/";
ParamManager::getInstance()->site_action="https://archimage.com/action.php";
2. Connexion à la base de données SQL
Archimage utilise une base de données SQL. Le moteur peut être MySQL ou MariaDB selon l’installation.
| Paramètre | Description |
|---|---|
sql_engine |
Moteur SQL utilisé par Archimage : Sql::$MYSQL ou Sql::$MARIADB. |
sql_host |
Nom d’hôte ou adresse IP du serveur de base de données. |
sql_user |
Utilisateur SQL utilisé par Archimage. |
sql_database |
Nom de la base de données Archimage. |
sql_pass |
Mot de passe de l’utilisateur SQL. |
Exemple :
ParamManager::getInstance()->sql_engine=Sql::$MYSQL; /* Sql::$MARIADB */
ParamManager::getInstance()->sql_host="localhost";
ParamManager::getInstance()->sql_user="archimage-user";
ParamManager::getInstance()->sql_database="archimage-database";
ParamManager::getInstance()->sql_pass="password";
Recommandation
L’utilisateur SQL doit disposer uniquement des droits nécessaires au fonctionnement d’Archimage. Il est déconseillé d’utiliser un compte administrateur SQL global.
3. Paramètres des courriels
Ces paramètres configurent les adresses utilisées par l’application et l’envoi des courriels via SMTP.
3.1 Adresses utilisées par l’application
| Paramètre | Description |
|---|---|
error_email |
Adresse recevant les erreurs techniques et alertes applicatives. |
public_email |
Adresse publique par défaut affichée par l’application. |
CONTACT_EMAIL |
Adresse utilisée par le formulaire de contact public. |
3.2 Envoi des courriels
| Paramètre | Description |
|---|---|
email_transport |
Méthode d’envoi utilisée ; valeurs courantes : smtp, gmail ou null. |
email_mail |
Adresse expéditrice utilisée par l’application. |
email_username |
Nom d’utilisateur utilisé pour l’authentification SMTP. |
email_password |
Mot de passe utilisé pour l’authentification SMTP. |
email_port |
Port SMTP utilisé pour l’envoi des messages. |
email_encryption |
Mode de chiffrement SMTP : tls, ssl ou null. |
email_auth_mode |
Mode d’authentification SMTP : plain, login, cram-md5, ntlm ou null. |
email_verify_peer |
Vérifie le certificat du serveur SMTP ; à désactiver uniquement pour un certificat autosigné. |
email_smtp_server |
Nom d’hôte du serveur SMTP. |
3.3 Stockage optionnel des messages envoyés
| Paramètre | Description |
|---|---|
email_server |
Boîte IMAP optionnelle utilisée pour stocker les messages envoyés ; laisser vide pour désactiver cette fonction. |
Exemple :
ParamManager::getInstance()->email_transport="smtp";
ParamManager::getInstance()->email_mail="mail@email.com";
ParamManager::getInstance()->email_username="username";
ParamManager::getInstance()->email_password="password";
ParamManager::getInstance()->email_port="587";
ParamManager::getInstance()->email_encryption="ssl";
ParamManager::getInstance()->email_auth_mode="login";
ParamManager::getInstance()->email_smtp_server="email.com";
Attention
Le paramètreemail_verify_peer="false"ne doit être utilisé que dans des cas spécifiques, par exemple avec un certificat autosigné. En production, il est préférable d’utiliser un certificat valide.
4. Répertoires temporaires, journaux et stockage
Ces paramètres définissent les emplacements utilisés par Archimage pour les fichiers temporaires, les logs, les mails et le dépôt principal des documents.
| Paramètre | Description |
|---|---|
TMP_UPLOAD_DIR |
Répertoire temporaire utilisé lors de l’envoi de fichiers. |
log_directory |
Répertoire où sont écrits les journaux applicatifs. |
log_dir_mail |
Répertoire où sont stockés les journaux ou copies de courriels. |
REPOSITORY |
Répertoire principal de stockage des fichiers documentaires. |
Exemple :
ParamManager::getInstance()->add("TMP_UPLOAD_DIR","/var/www/archimage_dir/tmp_upload/");
ParamManager::getInstance()->log_directory="/var/www/archimage_dir/logs/";
ParamManager::getInstance()->log_dir_mail="/var/www/archimage_dir/mails/";
ParamManager::getInstance()->add("REPOSITORY","/var/www/archimage_dir/repository");
Recommandation
Le répertoireREPOSITORYdoit disposer d’un espace disque suffisant et faire l’objet d’une politique de sauvegarde adaptée, car il contient les fichiers documentaires gérés par Archimage.
5. Paramètres IIIF
Archimage peut exposer les images via un service IIIF.
| Paramètre | Description |
|---|---|
IIIF_ACCESS |
Politique d’accès IIIF : 0 public, 1 réservé aux utilisateurs connectés, 2 désactivé. |
IIIF_URL |
URL publique du service IIIF. |
IIIF_CACHE_DIRECTORY |
Répertoire optionnel de cache IIIF pour améliorer les performances. |
IIIF_ATTRIBUTION |
Texte d’attribution ajouté dans les manifestes IIIF. |
IIIF_LICENCE |
URL de licence ajoutée dans les manifestes IIIF. |
Exemple :
ParamManager::getInstance()->add("IIIF_ACCESS","0");
ParamManager::getInstance()->add("IIIF_URL","https://archimage.com/iiif/");
ParamManager::getInstance()->add("IIIF_ATTRIBUTION","Archimage Licensed");
ParamManager::getInstance()->add("IIIF_LICENCE","http://creativecommons.org/licenses/by/4.0/");
Note
L’URL IIIF doit également être configurée au niveau du serveur web, par exemple dans le virtual host Apache ou Nginx.
6. Images par défaut et traitements d’image
Ces paramètres définissent les images de remplacement utilisées lorsque le fichier original est manquant, inaccessible ou lorsqu’un type de média ne dispose pas de vignette directe.
| Paramètre | Description |
|---|---|
IMAGE_NOT_FOUND |
Image affichée lorsqu’un fichier est manquant. |
IMAGE_NOT_ACCESSIBLE |
Image affichée lorsqu’un fichier n’est pas accessible en raison des droits. |
FONT_WATERMARK |
Police utilisée pour les filigranes lors des traitements d’image. |
IMAGE_DEFAULT_AUDIO |
Image par défaut pour les fichiers audio. |
IMAGE_DEFAULT_VIDEO |
Image par défaut pour les fichiers vidéo. |
IMAGE_DEFAULT_TEXT |
Image par défaut pour les documents textuels. |
IMAGE_DEFAULT_SPREADSHEET |
Image par défaut pour les tableurs. |
IMAGE_DEFAULT_3D |
Image par défaut pour les fichiers 3D. |
IMAGE_DEFAULT_AM |
Image par défaut pour les archives manuscrites. |
IMAGE_DEFAULT_EST |
Image par défaut pour les estampages. |
IMAGE_DEFAULT_PHOTO |
Image par défaut pour les photographies. |
IMAGE_DEFAULT_PLANO |
Image par défaut pour les plans. |
IMAGE_ENGINE |
Moteur de traitement d’image utilisé : vips, imagick ou gd. |
Exemple :
ParamManager::getInstance()->add("IMAGE_ENGINE","vips");
Recommandation
Le moteurvipsest généralement recommandé pour les traitements d’images volumineuses, car il est performant et moins consommateur en mémoire que d’autres solutions.
7. Intégrations avec les API externes
Archimage peut être connecté à différentes sources de données externes, notamment des API institutionnelles, IdRef, des exports ONIX ou d’autres services documentaires.
| Paramètre | Description |
|---|---|
EFA_API |
Active ou désactive l’intégration avec les API EFA. |
MISSIONS_API |
URL de l’API JSON utilisée pour les missions. |
MANIFESTATIONS_API |
URL de l’API JSON utilisée pour les manifestations ou événements. |
CHRONIQUE_API |
URL de l’API de la Chronique des fouilles. |
PUBLICATIONS_API |
URL de l’export ONIX utilisé pour les publications. |
DATA_API_TOKEN |
Jeton d’accès aux exports de données protégés. |
IDREF_API |
URL de base de l’API IdRef. |
Exemple :
ParamManager::getInstance()->add("EFA_API","0");
ParamManager::getInstance()->add("IDREF_API","https://www.idref.fr");
8. Paramètres DataCite et DOI
Ces paramètres permettent de configurer l’intégration avec DataCite pour la gestion ou la création de DOI.
| Paramètre | Description |
|---|---|
DATACITE_API |
URL de l’API DataCite ; utiliser l’URL de production hors environnement de test. |
DATACITE_BASE_URL |
URL de résolution des DOI. |
DATACITE_HOSTED_PAGES |
URL de l’interface des pages hébergées DataCite. |
DATACITE_PREFIX |
Préfixe DOI attribué par DataCite. |
DATACITE_USER |
Nom d’utilisateur du compte DataCite. |
DATACITE_PASSWORD |
Mot de passe du compte DataCite. |
DATACITE_EFE |
Valeur de configuration spécifique à l’établissement. |
DATACITE_SUFFIX |
Suffixe ou préfixe de suffixe DOI utilisé par l’application. |
DATACITE_EMAIL |
Adresse de contact utilisée dans les métadonnées DOI. |
DATACITE_DEFAULT_AUTHOR |
Auteur par défaut utilisé lorsqu’aucun auteur spécifique n’est disponible. |
Exemple de configuration de test :
ParamManager::getInstance()->add("DATACITE_API", "https://api.test.datacite.org");
ParamManager::getInstance()->add("DATACITE_BASE_URL", "https://handle.test.datacite.org/");
ParamManager::getInstance()->add("DATACITE_HOSTED_PAGES", "https://doi.test.datacite.org/dois/");
Attention
Les URLs de test doivent être remplacées par les URLs de production lorsque les DOI doivent être publiés officiellement.
9. Template public et statistiques
Ces paramètres définissent le thème public utilisé par Archimage et l’éventuelle intégration avec Matomo.
| Paramètre | Description |
|---|---|
TEMPLATE_STATIC_HTML |
Nom exact du dossier de template situé dans Archimage2/template/. |
MATOMO_URL |
URL du serveur Matomo utilisé pour les statistiques. |
MATOMO_ID |
Identifiant du site dans Matomo. |
Exemple :
ParamManager::getInstance()->add("TEMPLATE_STATIC_HTML","DEFAULT");
ParamManager::getInstance()->add("MATOMO_URL","");
ParamManager::getInstance()->add("MATOMO_ID","");
10. Options cartographiques Leaflet
Archimage utilise Leaflet pour l’affichage cartographique. Ces paramètres définissent les dimensions, le zoom, le centre par défaut, les couleurs et les seuils d’affichage des marqueurs.
10.1 Paramètres généraux de carte
| Paramètre | Description |
|---|---|
LEAFLET_HEIGHT |
Hauteur par défaut des cartes Leaflet, en pixels. |
LEAFLET_MAX_ZOOM |
Niveau de zoom maximal autorisé. |
LEAFLET_DEFAULT_ZOOM |
Niveau de zoom utilisé par défaut à l’ouverture d’une carte. |
LEAFLET_DEFAULT_CENTER_X |
Latitude utilisée pour centrer la carte par défaut. |
LEAFLET_DEFAULT_CENTER_Y |
Longitude utilisée pour centrer la carte par défaut. |
LEAFLET_GEO_COLOR |
Couleur par défaut des géométries. |
LEAFLET_GEO_WEIGHT |
Épaisseur par défaut des traits des géométries. |
LEAFLET_GEO_OPACITY |
Opacité par défaut des géométries. |
LEAFLET_RESEARCH_HEIGHT |
Hauteur des cartes affichées dans les pages de recherche. |
Note sur
CENTER_XetCENTER_Y
Même si les noms des paramètres utilisentXetY, ils sont transmis à Leaflet sous la forme[center_x, center_y]. Leaflet attend un tableau au format[latitude, longitude].
Ainsi,LEAFLET_DEFAULT_CENTER_Xcorrespond à la latitude etLEAFLET_DEFAULT_CENTER_Ycorrespond à la longitude.
Exemple :
ParamManager::getInstance()->add("LEAFLET_DEFAULT_CENTER_X","37.39");
ParamManager::getInstance()->add("LEAFLET_DEFAULT_CENTER_Y","25.26");
10.2 Seuils d’affichage des marqueurs
Ces seuils permettent d’adapter l’affichage des marqueurs selon le nombre de résultats à afficher.
| Paramètre | Description |
|---|---|
LEAFLET_MARKER_PRIVATE_TOO_LARGE |
Seuil privé pour un ensemble de résultats très volumineux. |
LEAFLET_MARKER_PRIVATE_LARGE |
Seuil privé pour un grand ensemble de résultats. |
LEAFLET_MARKER_PRIVATE_MEDIUM |
Seuil privé pour un ensemble moyen de résultats. |
LEAFLET_MARKER_PRIVATE_SMALL |
Seuil privé pour un petit ensemble de résultats. |
LEAFLET_MARKER_PRIVATE_VERY_SMALL |
Seuil privé pour un très petit ensemble de résultats. |
LEAFLET_MARKER_PUBLIC_TOO_LARGE |
Seuil public pour un ensemble de résultats très volumineux. |
LEAFLET_MARKER_PUBLIC_LARGE |
Seuil public pour un grand ensemble de résultats. |
LEAFLET_MARKER_PUBLIC_MEDIUM |
Seuil public pour un ensemble moyen de résultats. |
LEAFLET_MARKER_PUBLIC_SMALL |
Seuil public pour un petit ensemble de résultats. |
LEAFLET_MARKER_PUBLIC_VERY_SMALL |
Seuil public pour un très petit ensemble de résultats. |
10.3 Styles des secteurs
Les paramètres LEAFLET_SECTEUR_LVL_0 à LEAFLET_SECTEUR_LVL_4 définissent les styles graphiques des secteurs selon leur niveau hiérarchique.
Pour chaque niveau, trois paramètres sont disponibles :
| Suffixe | Description |
|---|---|
| Aucun suffixe | Couleur du secteur. |
_W |
Épaisseur du trait. |
_O |
Opacité. |
Exemple :
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_2","#A2D5CD");
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_2_W","8");
ParamManager::getInstance()->add("LEAFLET_SECTEUR_LVL_2_O","0.5");
11. Options d’affichage des notices publiques
Ces paramètres contrôlent l’affichage de certains blocs dans les fiches publiques.
| Paramètre | Description |
|---|---|
FICHE_PUBLIQUE_PERIODES_EXPAND |
Ouvre le bloc des périodes par défaut : 1 ouvert, 0 fermé. |
FICHE_PUBLIQUE_PERIODES_LIENS |
Mode d’affichage des liens de périodes : 0 caché, 1 URL complète, 2 icône seule. |
FICHE_PUBLIQUE_SECTEURS_EXPAND |
Ouvre le bloc des secteurs par défaut : 1 ouvert, 0 fermé. |
12. Options des archives manuscrites
Ces paramètres concernent l’affichage et l’organisation des archives manuscrites.
| Paramètre | Description |
|---|---|
AM_LABEL |
Format du libellé pour les archives manuscrites : REFERENCE, LEGENDE ou BOTH. |
AM_TYPE |
Mode d’affichage du type : NORMAL ou NONE. |
AM_TREE_FULL |
Affiche l’arborescence complète dans la fiche : 1 activé. |
13. Auteurs et champs descriptifs personnalisés
| Paramètre | Description |
|---|---|
AUTEUR_FORME |
Mode d’affichage des auteurs : NORMAL ou IDREF. |
desc1 à desc20 |
Libellés personnalisés optionnels pour les champs de description. |
desc1Type à desc20Type |
Types optionnels des champs personnalisés : Int, Text ou TextArea. |
Exemple :
//ParamManager::getInstance()->add("desc1","Example field name");
//ParamManager::getInstance()->add("desc1Type","Text");
14. Options Dublin Core
Ces paramètres définissent les valeurs par défaut utilisées dans les exports Dublin Core.
| Paramètre | Description |
|---|---|
DC_SOURCE |
Valeur par défaut du champ source Dublin Core. |
DC_PUBLISHER |
Valeur par défaut du champ éditeur Dublin Core. |
DC_DEFAULT_LANGUAGE |
Code de langue par défaut utilisé dans les exports Dublin Core. |
15. Options EAD
Ces paramètres permettent de personnaliser les exports EAD produits par Archimage.
Ils décrivent notamment l’institution, le dépôt, les informations d’adresse, les valeurs par défaut et les textes utilisés dans les notices ou ensembles documentaires exportés.
| Paramètre | Description |
|---|---|
EAD_CONTRIBUTOR |
Contributeur par défaut dans les exports EAD. |
EAD_TITLE |
Titre par défaut du catalogue EAD. |
EAD_HEADER_SITE_TITLE |
Titre du site dans l’en-tête EAD. |
EAD_HEADER_PROFILE_DESC |
Description du profil dans l’en-tête EAD. |
EAD_IDENTIFIER |
Identifiant EAD de l’institution ou du catalogue. |
EAD_COUNTRY_CODE |
Code pays utilisé dans les exports EAD. |
EAD_REPOSITORY_CODE |
Code du dépôt ou de l’institution. |
EAD_CORPNAME |
Nom de collectivité du dépôt ou de l’institution. |
EAD_SOURCE |
Mention de source EAD. |
EAD_SOURCE_SUBJECT |
Sujet associé à la source EAD. |
EAD_AUTH_NUMBER |
Numéro d’autorité EAD. |
EAD_ADDRESS_STREET |
Rue utilisée dans l’adresse EAD. |
EAD_ADDRESS_CODE_CITY |
Code postal et ville utilisés dans l’adresse EAD. |
EAD_ADDRESS_COUNTRY |
Pays utilisé dans l’adresse EAD. |
EAD_ADDRESS_PHONE |
Téléphone utilisé dans l’adresse EAD. |
EAD_ADDRESS_EMAIL |
Courriel utilisé dans l’adresse EAD. |
EAD_ACCESS_RESTRICT |
Texte de restriction d’accès ; les liens extref sont possibles. |
EAD_CREATION_PROFILE_1 |
Première ligne du profil de création EAD. |
EAD_CREATION_PROFILE_2 |
Deuxième ligne du profil de création EAD. |
EAD_DEFAULT_LANGUAGE_ISO |
Code ISO de langue par défaut. |
EAD_DEFAULT_LANGUAGE_LABEL |
Libellé de langue par défaut. |
EAD_GENREFORM_TYPE |
Type de genre ou forme EAD. |
EAD_GENREFORM_LABEL |
Libellé de genre ou forme EAD. |
EAD_GEOGNAME_ROLE |
Rôle associé aux noms géographiques. |
EAD_SITE_CORPNAME_ORIGINATION |
Nom de collectivité d’origine pour les notices de site. |
EAD_SITE_SCOPE_CONTENT |
Texte de portée et contenu pour les notices de site. |
EAD_SITE_ACCRUALS |
Texte d’accroissement pour les notices de site. |
EAD_SITE_MISSION_PREFIX |
Préfixe utilisé pour les entrées liées aux missions. |
EAD_SITE_DECENNIE_PREFIX |
Préfixe utilisé pour les entrées liées aux décennies. |
EAD_SITE_ANNEE_PREFIX |
Préfixe utilisé pour les entrées liées aux années. |
EAD_SITE_ARRANGEMENTS |
Texte d’organisation ou classement pour les notices de site. |
EAD_SITE_URL_REPOSITORY |
URL du dépôt utilisée pour les notices de site. |
EAD_SITE_GENREFORM_LABEL |
Libellé de genre ou forme pour les notices de site. |
EAD_DEFAULT_DATE_NOT_SET |
Valeur utilisée lorsqu’une date est absente. |
EAD_DEFAULT_MISSION_NOT_SET |
Valeur utilisée lorsqu’une mission est absente. |
EAD_DEFAULT_SECTEUR_NOT_SET |
Valeur utilisée lorsqu’un secteur est absent. |
16. Licence, droits et téléchargement
Ces paramètres définissent certains textes liés aux droits, aux licences et au téléchargement.
| Paramètre | Description |
|---|---|
LICENCE_DESCRIPTIONS |
Mention de licence affichée pour les descriptions. |
DOWNLOAD_MESSAGE_TITLE |
Titre affiché au-dessus du message de téléchargement. |
DOWNLOAD_MESSAGE |
Message affiché aux utilisateurs lors du téléchargement. |
API_KEY |
Sel utilisé pour les clés API des consultants ; laisser vide pour utiliser la valeur par défaut. |
17. Options spécifiques ou institutionnelles
Certains paramètres correspondent à des fonctionnalités spécifiques ou à des usages institutionnels particuliers.
| Paramètre | Description |
|---|---|
ACTIVATE_LIASSES |
Active la gestion des liasses pour des workflows spécifiques ; 0 désactivé, 1 activé. |
PUBLICATIONS_IMG_PROXY |
Active le proxy des images issues des publications ONIX ; 0 désactivé, 1 activé. |
FranceArchives |
Active une page FranceArchives via le connecteur OAI-PMH ; 0 désactivé, 1 activé. |
18. Désactivation de modules de recherche publique
Le paramètre DESACTIVATE_SEARCH, lorsqu’il est activé, permet de désactiver certains modules de recherche publique.
Il reçoit une liste d’identifiants séparés par des virgules.
Exemple :
//ParamManager::getInstance()->add("DESACTIVATE_SEARCH","1,2,3,4");
Identifiants disponibles :
| Identifiant | Module |
|---|---|
1 |
Recherche simple |
2 |
Recherche avancée |
3 |
Recherche inventaire |
4 |
Recherche archives manuscrites |
5 |
Recherche géographique |
6 |
Recherche XLS |
7 |
Collection archives |
8 |
Recherche photo géographique |
9 |
Recherche missions |
10 |
Recherche secteur géographique |
11 |
Recherche publications |
12 |
Recherche dernières modifications |
19. Style de l’interface d’administration
Ces paramètres personnalisent les couleurs de l’interface d’administration.
| Paramètre | Description |
|---|---|
main_colour |
Couleur principale de l’interface d’administration. |
colour_2 |
Couleur secondaire. |
colour_3 |
Troisième couleur utilisée par l’interface. |
font_colour_1 |
Couleur principale du texte. |
font_colour_2 |
Couleur secondaire du texte. |
link_colour_1 |
Couleur principale des liens. |
link_colour_1_hover |
Couleur des liens principaux au survol. |
link_colour_2 |
Couleur secondaire des liens. |
link_colour_2_hover |
Couleur des liens secondaires au survol. |
Exemple :
StyleManager::getInstance()->main_colour="#6B82AC";
StyleManager::getInstance()->colour_2="#003459";
StyleManager::getInstance()->colour_3="#007EA7";
20. Cache Redis
Redis peut être utilisé comme cache applicatif afin d’améliorer les performances.
| Paramètre | Description |
|---|---|
redis_hostname |
Nom d’hôte du serveur Redis. |
redis_port |
Port du serveur Redis. |
redis_username |
Nom d’utilisateur Redis. |
redis_password |
Mot de passe Redis. |
redis_dbindex |
Index de la base Redis utilisée. |
redis_timeout |
Délai d’attente de connexion à Redis. |
redis_read_timeout |
Délai d’attente de lecture Redis. |
redis_retry_interval |
Intervalle de nouvelle tentative Redis. |
Exemple :
//ParamManager::getInstance()->redis_hostname='';
//ParamManager::getInstance()->redis_port='';
//ParamManager::getInstance()->redis_password='';
21. Langues et routage
Ces paramètres définissent les langues disponibles et le comportement des routes publiques.
| Paramètre | Description |
|---|---|
LANGUAGES |
Langues activées dans l’interface, séparées par des virgules. |
DEFAULT_LANG |
Langue par défaut ; utiliser auto pour une détection automatique. |
KRoute::overideKrouteIdentifier("r") |
Définit l’identifiant de route utilisé dans les URLs publiques. |
Exemple :
ParamManager::getInstance()->add("LANGUAGES","fr");
ParamManager::getInstance()->add("DEFAULT_LANG","fr");
KRoute::overideKrouteIdentifier("r");
22. Sécurité et proxy
Ces paramètres concernent certaines fonctionnalités sensibles de l’administration et le fonctionnement derrière un proxy inverse.
| Paramètre | Description |
|---|---|
impersonate |
Active ou désactive l’impersonation d’utilisateurs dans l’administration. |
trusted_proxy |
Adresse IP du proxy inverse de confiance utilisée pour retrouver l’adresse IP réelle du client. |
Exemple :
ParamManager::getInstance()->impersonate=true;
ParamManager::getInstance()->trusted_proxy="192.168.11.1";
Attention
L’impersonation est une fonctionnalité sensible. Elle doit être réservée aux administrateurs autorisés et utilisée uniquement dans un cadre maîtrisé.
23. Bonnes pratiques de configuration
Avant de mettre une instance Archimage en production, il est recommandé de vérifier les points suivants :
-
le mode
debugdoit être désactivé ; -
les mots de passe SQL, SMTP, Redis et DataCite doivent être robustes ;
-
le fichier
config.phpne doit pas être accessible publiquement ; -
les répertoires de logs, de cache, de dépôt et d’upload doivent avoir des permissions adaptées ;
-
le répertoire
REPOSITORYdoit être sauvegardé régulièrement ; -
les URLs publiques doivent correspondre au nom de domaine réel de l’instance ;
-
le service IIIF doit être cohérent entre la configuration PHP et la configuration du serveur web ;
-
les paramètres SMTP doivent être testés avant ouverture du formulaire de contact ;
-
les paramètres
trusted_proxydoivent uniquement pointer vers un proxy réellement maîtrisé ; -
les options DataCite de test doivent être remplacées avant toute publication officielle de DOI.
24. Exemple de configuration minimale
Une configuration minimale doit au moins renseigner correctement :
ParamManager::getInstance()->server_url="https://archimage.example.org/";
ParamManager::getInstance()->site_root="https://archimage.example.org/";
ParamManager::getInstance()->site_action="https://archimage.example.org/action.php";
ParamManager::getInstance()->sql_engine=Sql::$MYSQL;
ParamManager::getInstance()->sql_host="localhost";
ParamManager::getInstance()->sql_user="archimage-user";
ParamManager::getInstance()->sql_database="archimage-database";
ParamManager::getInstance()->sql_pass="CHANGE_ME";
ParamManager::getInstance()->add("REPOSITORY","/var/www/archimage_dir/repository");
ParamManager::getInstance()->add("IIIF_URL","https://archimage.example.org/iiif/");
Cette base doit ensuite être complétée selon les besoins de l’établissement : envoi des courriels, exports EAD ou Dublin Core, statistiques Matomo, API externes, DOI DataCite, cache Redis ou options cartographiques.
Mise à jour de version
Mise à jour automatique
Nous vous proposons de mettre à jour Archimage via un script PHP que vous pourrez trouver sur la forge suivante :
https://github.com/EFAthenes/archimage-script-update/tree/main
Veuillez choisir la version exacte de votre instance puis télécharger le script updateVersion.php
par exemple de la version 26.05 à 26.06
wget https://github.com/EFAthenes/archimage-script-update/raw/refs/heads/main/26.05_To_26.06/updateArchimage.php
Precaution :
1) Le script ne fait pas de sauvegarde
2) Le script a besoin d'une connexion à internet
3) Le script doit pourvoir se connecter à la base de données
Une fois télécharger veuillez lancer le script localement sur le serveur.
sudo -u www-data php updateVersion.php /path/to/current/installation
Mise à jour manuelle
Pour cela il faut aller télécharger la release qui vous intérresse :
https://github.com/EFAthenes/archimage/releases
Puis de consulter le Readme