Documentation Frappe Framework

Frappe Framework

Sites

Chaque locataire est un dossier de site. La requête HTTP le choisit par le nom d’hôte, ou par un en-tête explicite.

1 min de lectureMis à jour le Source : docs.frappe.io

Dossier des sites

Frappe est multi-locataire. Chaque locataire est un site. Les sites vivent dans le dossier sites, pris comme répertoire courant quand une commande Frappe, un worker Celery ou un serveur WSGI démarre. sites_dir se fixe avec la variable SITES_DIR ou l’option --sites_dir.

À côté des sites, ce dossier contient :

FichierRôle
apps.txtPaquets Python traités comme applications. Chacune doit y figurer et être sur le PYTHONPATH. Voir Apps Frappe.
common_site_config.jsonFacultatif. Configuration commune à tous les sites.
assetsFichiers servis au navigateur, en général js, css et png. Produit par bench build.
languages.txtFichier généré qui associe chaque langue à son code.

Un site

Un site est un dossier de sites_dir. On y trouve locks, private/backups, public/files et site_config.json.

locks sert au planificateur pour synchroniser les travaux par verrou de fichier. private contient les fichiers qui exigent une authentification. La source le limite pour l’instant aux sauvegardes. public est servi directement : testfile.txt répond à http://site/files/testfile.txt. site_config.json porte la configuration propre au site. Les clés sont dans Configuration (site_config.json).

Résolution

Pour une requête HTTP, le site est choisi si l’en-tête Host correspond à un site, ou si l’en-tête X-Frappe-Site-Name correspond à un site. En développement, on force le site avec bench --site SITENAME serve.

Créer et choisir

bench new-site SITENAME ajoute un site. Le détail des options est dans bench new-site. bench use SITENAME en fait le site par défaut. currentsite.txt, dans le dossier sites, doit alors contenir ce nom.

Sites Frappe : dossier, résolution, bench | ERPNext Lab