43
SPIP : Fonctionnement d’un SITE DYNAMIQUE avec CACHE Deux caractéristiques parmi d’autres qui font la puissance de SPIP et qui facilitent grandement le travail des Rédacteurs et des Administrateurs CACHE Conten ant Struct ure Contenu Données Site dynamique & Illustration avec la Création et la Lecture d’un Article Cours SPIP, dispensé par François Daniel Giezendanner, Centre des Technologies de l’Information et de la Communication (CPTIC) - DIP, 2-4 Théodore-de-Bèze, 1205 CH- Genève

SPIP : Fonctionnement d’un SITE DYNAMIQUE avec CACHE

  • Upload
    shima

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

Site dynamique. CACHE. Contenant Structure. Contenu Données. SPIP : Fonctionnement d’un SITE DYNAMIQUE avec CACHE. Deux caractéristiques parmi d’autres qui font la puissance de SPIP et qui facilitent grandement le travail des Rédacteurs et des Administrateurs. &. - PowerPoint PPT Presentation

Citation preview

Page 1: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

SPIP : Fonctionnement d’un SITE DYNAMIQUE avec CACHE

Deux caractéristiques parmi d’autres qui font la puissance de SPIP et qui facilitent grandement le travail des Rédacteurs et des Administrateurs

CACHE

ContenantStructure

ContenuDonnées

Site dynamique &

Illustration avec la Création et la Lecture d’un Article

Cours SPIP, dispensé par François Daniel Giezendanner, Centre des Technologies de l’Information et de la Communication (CPTIC) - DIP, 2-4 Théodore-de-Bèze, 1205 CH-Genève

Page 2: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

SPIP : Fonctionnement d’un SITE DYNAMIQUE avec CACHE

Deux caractéristiques parmi d’autres qui font la puissance de SPIP et qui facilitent grandement le travail des Rédacteurs et des Administrateurs

CACHE

ContenantStructure

ContenuDonnées

&

Illustration avec la Création et la Lecture d’un Article

Cours SPIP, dispensé par François Daniel Giezendanner, Centre des Technologies de l’Information et de la Communication (CPTIC) - DIP, 2-4 Théodore-de-Bèze, 1205 CH-Genève

MoteurSystème

Site dynamique

Page 3: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Structure

Données

Moteur

Documentsjoints

Images

Base deDonnées

Site Dynamique

WebZine SPIP

CACHE

Disposition des 6 Fonctions et Dossiers principaux d’un WebZine créé avec SPIP et disposition dans l’arborescence du disque dur du Serveur

Page 4: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

2. Structure

Données

1. Moteur

5. Docu-ments joints

4. Images

3. Base de Données

Site Dynamique

WebZine SPIP

6. CACHE

Disposition des 6 Fonctions et Dossiers principaux d’un WebZine créé avec SPIP et disposition dans l’arborescence du disque dur du Serveur

Page 5: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

AuteursEspace Privé

AdministrateurEspace Privé

Internautes

Visiteurs

Espace Public

Trois types d’Acteurs dans deux Espaces privés et un Espace public

Page 6: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Trois types d’Acteurs dans deux Espaces privés et un Espace publicBase de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Auteurs

Espace Privé

Administrateur

Espace Privé

Internautes

Visiteurs

Espace Public

Page 7: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Trois types d’Acteurs dans deux Espaces privés et un Espace publicBase de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Auteurs

Espace Privé

Administrateur

Espace Privé

Internautes

Visiteurs

Espace Public

Page 8: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Trois types d’Acteurs dans deux Espaces privés et un Espace publicBase de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

6

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Auteurs

Espace Privé

Administrateur

Espace Privé

Internautes

Visiteurs

Espace Public

7

Page 9: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Trois types d’Acteurs dans deux Espaces privés et un Espace publicBase de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

6 7

4

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Auteurs

Espace Privé

Administrateur

Espace Privé

Internautes

Visiteurs

Espace Public

2

5

Page 10: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

des éléments fonctionnels d’un WebZine SPIP

Description et arborescence serveur

Page 11: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

Eléments fonctionnels et arborescence serveur d’un site SPIP

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Détail et interrelations des 6 Fonctions et Dossiers principaux d’un WebZine créé avec SPIP.

Page 12: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

n couples de fichiers <nom_i.php + nom_i.html>

3

STRUCTURE

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Eléments fonctionnels et arborescence serveur d’un site SPIP

Page 13: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

DONNEES

Eléments fonctionnels et arborescence serveur d’un site SPIP

Page 14: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

DONNEES• Auteurs et leurs • Adresses e-mail, • Login & Mots de passe, • URL sites web, • Mots-clés,• Pétitions et Signatures, • Forums, • Messageries internes,• Calendrier interne,

Les données enregistrées dans la BD sont :• Rubriques et Hiérarchie arborescente,• Brèves et leur composantes,• Articles et leurs composants,

Eléments fonctionnels et arborescence serveur d’un site SPIP

• Sites & Articles Syndiqués, • Moteur de recherche, Dictionnaire & Tables,• Relations entre objets,• Gestion du site,...

Page 15: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

DONNEES• Auteurs et leurs • Adresses e-mail, • Login & Mots de passe, • URL sites web, • Mots-clés,• Pétitions et Signatures, • Forums, • Messageries internes,• Calendrier interne,

Les données enregistrées dans la BD sont :• Rubriques et Hiérarchie arborescente,• Brèves et leur composantes,• Articles et leurs composants,

Eléments fonctionnels et arborescence serveur d’un site SPIP

• Sites & Articles Syndiqués, • Moteur de recherche, Dictionnaire & Tables,• Relations entre objets,• Gestion du site,...

La Base de Données d’un webZine SPIP comporte 40 Tables. Vingt sont

mentionnées ici. Décrivons trois d’entre elles à titre d’illustration,

à savoir : les Rubriques, les Articles et les Auteurs.

Page 16: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Référence : documentation officielle SPIP, document « squelette_nav_20021217.pdf, pages 4 à 10

Illustration du contenu de la Base de Donnée.

Cas de la Table d’une Rubrique, elle comporte 9 champs.

Page 17: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Référence : documentation officielle SPIP, document « squelette_nav_20021217.pdf, pages 4 à 10

Illustration du contenu de la Base de Donnée.

Cas de la Table d’un Article,elle comporte 19 champs.

Page 18: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Référence : documentation officielle SPIP, document « squelette_nav_20021217.pdf, pages 4 à 10

Illustration du contenu de la Base de Donnée.

Cas de la Table d’un Auteur,elle comporte 12 champs.

Page 19: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

La Base de Donnée MySQL configurée pour SPIP contient 40 Tables.

http://martinrabo.ouvaton.org/clerondegambe/stats2/stats_gene.php

Page 20: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

DONNEES

Eléments fonctionnels et arborescence serveur d’un site SPIP

Documents joints

Page 21: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

DONNEES

Vous pouvez joindre à votre article des documents de type : aiff, asf, avi, bmp, bz2, djvu, doc, eps, gif, gz, html, jpg, mid, mov, mp3, mpg, ogg, pdf, png, ppt, ps, psd, qt, ra, ram, rm, rtf, sdd, sdw, sit, swf, sxi, sxw, tgz, tif, txt, wav, wmv, xls, xml, zip

Eléments fonctionnels et arborescence serveur d’un site SPIP

Documents joints

Page 22: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Les images acceptées sont de types : JPEG, GIF et PNG

Eléments fonctionnels et arborescence serveur d’un site SPIP

DONNEES

Page 23: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

4

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

CACHE

Eléments fonctionnels et arborescence serveur d’un site SPIP

(Fichiers php)

Page 24: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Processus de calcul d’une page SPIP et Fonctionnement du CACHE

Arborescence d’un site WeZbine créé avec SPIP

SPIP utilise le CACHE systématiquement pour les Internautes,à la demande pour les Administrateurs et jamais pour les Rédacteurs

CACHE

InternautesRédacteurs

Administrateurs

Page 25: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Création d’un article

Rôle : Rédacteur, donc SPIP n’utilise pas le Cache

Espace : Privé de rédaction

Processus de calcul d’une page SPIP et Fonctionnement du CACHE

Page 26: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Sépare gabarit et données

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Créé fichier PHP & HTML

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Création d’un article: Rôle de Rédacteur

n couples de fichiers <nom_i.php + nom_i.html>

3

L’utilisateur rédige par exemple l’article 6, il travaille donc avec le Rôle de « Rédacteur » et utilise le système

(Moteur) SPIP situé dans le répertoire ../spip/ecrire>. Lorsqu ’il sauve (enregistre) l’article 6

SPIP : sites dynamiques ==> Séparation des données et de la structure

le MOTEUR SPIP procède à la séparation de la Structure et des Données.

Rédacteur

Page 27: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Sépare gabarit et données

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Créé fichier PHP & HTML

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Création d’un article: Rôle de Rédacteur

3

STRUCTURE : le Moteur SPIP créé un couple de fichiers : un fichier nom_6.php3 et un fichier nom_6.html qu’il enregistre dans le dossier …/spip>.

n couples de fichiers <nom_i.php + nom_i.html>

SPIP : sites dynamiques ==> Séparation des données et de la structure

Rédacteur

Page 28: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Sépare gabarit et données

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Créé fichier PHP & HTML

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Création d’un article: Rôle de Rédacteur

3Les Données texte,… sont enregistrées dans une base de données MySQL

Les IMAGES sont enregistrées dans le répertoire …/spip/IMG>

Et les DOCUMENTS JOINTS sont enregistrés dans le répertoire .../spip/IMG/doc>

n couples de fichiers <nom_i.php + nom_i.html>

SPIP : sites dynamiques ==> Séparation des données et de la structure

DONNEES :

Rédacteur

Page 29: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Validation d’un article

Rôle : Administrateur, donc SPIP peut utiliser le Cache

Espace : Privé d’administration

Processus de calcul d’une page SPIP et Fonctionnement du CACHE

Page 30: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Sépare gabarit et données

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Créé fichier PHP & HTML

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Validation d’un article: Rôle de l’Administrateur

3

Administrateur

Depuis l’espace d’administration, l’administrateur voit en haut à gauche de la page:

Si vous souhaitez voire apparaître les modifications de l’article immédiatement dans l’espace Internaute, cliquez sur le bouton :« Voir en ligne »,

L’article est calculé dans le cache et affiché à l’écran. Si vous passer directement dans l’Espace Internaute sans cliquer ce bouton ...

Page 31: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Sépare gabarit et données

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Créé fichier PHP & HTML

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Validation d’un article: Rôle de l’Administrateur

3

Administrateur

Si le cache contient déjà cet article, et que vous visitez la page en mode « Internaute », vous verrez trois boutons en bas de page :

Ceci est vrais dans la mesure ou les cookies sont acceptées dans votre navigateur.

Si vous souhaitez voire apparaître les modifications de l’article immédiatement, cliquez sur le bouton « Recalculer cette page * » si un * est visible.

D’autre part, si vous avez modifié de nombreuses pages, en votre qualité d’administrateur vous pouvez vider le cache.

Page 32: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Rôle : Internaute, donc SPIP utilise le CACHEEn mode Lecture

Lecture d’un article qui :• existe dans le CACHE et• n’est pas échu

Espace : Public des Internautes

Page 33: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Lecture d’un article qui existe dans le CACHE

Etape 1

L’URL correspondant est :Article.php3?id_article=6

L’utilisateur clique sur un lien appelant une page spécifique, par exemple l’article 6, de fait c’est un fichier .php3.

n couples de fichiers <nom_i.php + nom_i.html>

Internaute

Page 34: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Lecture d’un article qui existe dans le CACHE

Etape 2

le Moteur SPIP calcul le fichier HTML correspondant - le serveur y intègre les documents joints & les images - et le retourne à l’utilisateur.

Le fichier PHP correspondant existant dans le dossier CACHE, le moteur vérifie sa date de création. Le fichier étant suffisamment récent,

Les images sont tirées du répertoire …/spip/IMG> et les documents joints sont tirés du répertoire …/spip/IMG/doc>

n couples de fichiers <nom_i.php + nom_i.html>

Internaute

Page 35: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Lecture d’un article qui :

Rôle : Internaute, donc SPIP utilise le CACHEEn mode Ecriture puis Lecture

• n’existe pas dans le CACHE• ou existe mais est échu

Espace : Public des Internautes

Page 36: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Lecture d’un article qui n’existe pas dans le CACHE

Etape 1

Le Moteur SPIP vérifie si le fichier se trouve dans le dossier CACHE

n couples de fichiers <nom_i.php + nom_i.html>

L’URL correspondant est :Article.php3?id_article=6

L’utilisateur clique sur un lien appelant une page spécifique, par exemple l’article 6, de fait c’est un fichier .php3.

Internaute

Page 37: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

n couples de fichiers <nom_i.php + nom_i.html>

Stockage des images dansle Répertoire…/spip/IMG>

Images

3

4

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

Etape 2

PHP n’existe pas), le moteur SPIP lit alors le couple de fichiers correspondant nom_6.php et nom_6.html dans le répertoire …/spip>. Sur cette base il calcule un fichier nom_b6.php en incluant les éléments (textes…) adéquats tirés de la Base de Données, et l’enregistre dans le CACHE.

Si le fichier PHP correspondant n’existe pas dans le dossier CACHE (1ère visite sur cet article par exemple), ou si sa date de création est trop ancienne (ici le fichier

Lecture d’un article qui n’existe pas dans le CACHE

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Internaute

Page 38: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

5 Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Etape 3

du calcul de l’article qui est effectuée à ce stade. Mais le fichier HTML n’est pas encore calculé.

Ainsi, le fichier nom_b6.php enregistré dans le CACHE est un fichier PHP qui résulte d’un calcul important du serveur à partir du couple de fichiers « nom_6.php

Lecture d’un article qui n’existe pas dans le CACHE

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

& nom_6.html » avec les éléments tirés de la Base de Données. C’est la part majeure

Internaute

Page 39: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

2

Stockage des images dansle Répertoire…/spip/IMG>

Images

4

5 Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Etape 4

Lecture d’un article qui n’existe pas dans le CACHE

A partir du fichier nom_b6.php du CACHE, le Moteur SPIP calcul le fichier HTML nom_c6.html correspondant

n couples de fichiers <nom_i.php + nom_i.html>

3

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

Internaute

Page 40: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Lecture d’un article qui existe dans le CACHE

Etape 5

4

Les Images sont tirées du répertoire …/spip/IMG> et les Documents joints sont tirés du répertoire …/spip/IMG/doc>

A partir du fichier nom_b6.php du CACHE, le Moteur SPIP calcul le fichier HTML nom_c6.html correspondant, le serveur y intègre les Documents joints & les Images.

n couples de fichiers <nom_i.php + nom_i.html>

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

3

Internaute

Page 41: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Base de données

Moteur

Calcul les boucle SPIP

Calcul PHP--> HTML

Répertoire…/spip/ecrire>

Squelette SPIP

nom_i.phpnom_i.htm

Répertoire…/spip>

1 2

Stockage des images dansle Répertoire…/spip/IMG>

Images

5

6 7

Stockage des Fichiers.php

Dans leRépertoire

…/spip/CACHE>

CACHE

nom_bi.php

Etape 6

4

Lecture d’un article qui n’existe pas dans le CACHE

Le fichier HTML nom_c6.html final est retourné à l’utilisateur (affiché dans son navigateur)

n couples de fichiers <nom_i.php + nom_i.html>

Stockage des documents joints

Dans le Répertoire…/spip/IMG/doc>

Documents joints

3

Internaute

Page 42: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Lors d’une visite suivante :

• Si le délais entre les deux visites est suffisamment court, c’est donc le nouveau fichier nom_b6.php stocké dans le CACHE qui est utilisé pour calculer la page nom_c6.html et qui est retourné à l’utilisateur (affiché), sans avoir à faire un nouveau calcul à partir de la base de données.

• En cas de plantage de la base de données, c’est forcément le fichier en cache qui est retourné, même s’il est « trop âgé ».

Page 43: SPIP : Fonctionnement d’un  SITE DYNAMIQUE avec CACHE

Le recalcul des pages est provoqué uniquement par les visites du site :

• On voit ici que chaque page du site est mise en cache individuellement.

• Chaque recalcul est provoqué par les visites du site lorsque la page est échue dans le cache.

• Il n’y a pas, en particulier, un recalcul de toutes les pages du site d’un seul coup à échéance régulière: ce genre de « grosse manœuvre » ayant le bon goût de surcharger le serveur et de le faire parfois planter.

• Par contre l’administrateur peut effacer complètement tous les fichiers du cache.