Documentation

Installation

Table des matières 

Prérequis

Pour utiliser Temma, vous avez besoin d'un hébergement Web exploitant l'interpréteur PHP en version 8.0 ou supérieure.

Temma peut utiliser toutes les bases de données supportées par l'extension PDO, ainsi que la base noSQL Redis, et le serveur de cache Memcached.

Télécharger Temma

Pour télécharger et utiliser Temma, vous pouvez cloner le dépôt GitHub :

$ git clone https://github.com/Amaury/Temma mon_projet

Vous pouvez aussi télécharger et décompresser l'archive : https://github.com/Amaury/Temma/archive/master.zip

Télécharger Smarty

Si vous utilisez Temma pour créer une API sans génération de page HTML, vous n'aurez pas besoin du moteur de templates Smarty. Dans le cas inverse, Temma a besoin de Smarty en version 4 ou plus (si vous utilisez PHP 8.1, il vous faudra Smarty 4.1).

Veuillez télécharger l'archive (format ZIP ou TAR.GZ) de la dernière version de Smarty.

En décompressant l'archive, vous verrez un sous-répetoire libs/. Renommez-le smarty4 puis déplacez-le dans le répertoire lib/ de votre projet.

Installer Temma

Une fois le dépôt Git cloné, définissez les droits sur les répertoires :

$ cd mon_projet; chmod 755 log tmp

Ensuite, il faut savoir si vous utilisez la configuration Apache ou la configuration par fichiers .htaccess.

Fichiers .htaccess

Les fichiers .htaccess sont nécessaires en cas d'hébergement mutualisé.
Si c'est votre cas, vous n'avez rien à faire. Les fichiers sont déjà présents à la racine et dans le répertoire www/.

Serveur Apache

La configuration Apache est à utiliser si vous avez votre propre serveur dédié.
Vous trouverez un fichier d'exemple dans le répertoire etc/, à adapter en fonction de vos besoins.

Il vous faudra en plus effacer les fichiers .htaccess existants :

$ cd mon_projet; rm -f .htaccess www/.htaccess

Arborescence du projet

Voici le contenu d'un projet Temma :

mon_site/
        bin/
        controllers/
        etc/
           temma.json
           apache.conf
        lib/
           Temma/
           smarty/
           smarty-plugins/
        log/
           temma.log
        templates/
        tmp/
        var/
        views/
        www/
           index.php
  • bin : Contient vos scripts de maintenance.
  • controllers : Répertoire principal pour vos contrôleurs.
  • etc : Répertoire de configuration
    • temma.json : Fichier de configuration du projet.
    • apache.conf : Fichier de configuration du "virtual host", dans le cas d'un serveur Apache.
  • lib : Répertoire de base contenant les bibliothèques externes, mais aussi vos objets métier.
    • Temma : Le code du framework.
    • smarty : Moteur de template Smarty.
    • smarty-plugins : Plugins Smarty proposés par Temma.
  • log : Répertoire contenant les fichiers de log.
    • temma.log : Fichiers de log du projet.
  • templates : Répertoire contenant les templates.
  • tmp : Répertoire des fichiers temporaires.
  • var : Répertoire optionnel, pouvant contenir les fichiers de données de votre application.
  • views : Répertoire optionnel, pouvant contenir vos propres vues.
  • www : Répertoire racine du site web, contenant tous les fichiers CSS, Javascript et les images.
    • index.php : script PHP principal, qui démarre le framework.
Précédent : Migration
Suivant : Configuration

Table des matières