""
Documentation daCode : Guide du webmestre de daCode
Chapitre 2. Installation de daCode sur localhost

 

Observer le fonctionnement du serveur

 

Le cache

Le cache de dacode permet de stocker des fragments HTML dans le but d'éviter de faire des appels dynamiques PHP et MySQL/PostgreSQL. Ces appels sont coûteux et doivent être évités dans la mesure du possible.

Deux types de fragments sont mis en cache : les boîtes et les pages. Une page est un document HTML complet, alors qu'une boîte est un bout de HTML qui est inséré dans un document généré par daCode. Nous allons séparer ces deux aspects :


      $ mkdir dacache 
    $ mkdir dacache/boxes dacache/pages 
   


Le cache est géré par Apache. Il faut que celui-ci puisse écrire et lire dans le cache. Pour l'instant, on donne des droits suffisants. On affinera plus tard...


    $ chmod o+rwx dacache/boxes/ dacache/pages/ 
   


Il nous faut rajouter dans le `config.site' nos emplacements :


      $ grep cache daCode/config.site 
        $this->cachedir = "/home/dacode/dacache/boxes/"; 
        $this->htmldir  = "/home/dacode/dacache/pages/"; 
    $ cd daCode; scripts/dacodeconfig -a configure
    
   
va recréer le fichier daCode/build/phplib/config.php3. Si vous avez opté pour la version manuelle, allez modifier daCode/src/phplib/config.php3

Maintenant, le cache est opérationnel. Si vous faites appel à votre site daCode, les répertoires vont se remplir de fichiers petit à petit. Il n'y a pas d'intervention particulière de maintenance à prévoir.

Les noms de fichiers ressemblent à ceci :


      $ ls dacache/* 
    dacache/boxes: 
    backends_agenda--.,0.html  dacode_dacode--,0.html.1.0. 
    backends_kernel--.,0.html  sidebox_topics--,0.html.1.0. 
   
    dacache/pages: 
    index,0,1,0.html 
   


L'en-tête (backend_agenda) décrit quel est le script qui est à l'origine de la création de ce fichier de cache. Les suffixes sous forme de chiffres, séparés par des points ou des virgules représentent un profil d'utilisateur.

  • Un utilisateur anonyme

  • Un utilisateur ayant choisi l'habillage Slashdot

  • Un utilisateur ayant choisi l'habillage par défaut et [un autre truc]. (TODO)



Deux remarques :

  • Plus les profils auront d'options, plus le cache devra créer de fichiers.

  • Vous pouvez peut être trouver commode de vous représenter les profils comme étant une partie de la base de données de daCode stockée dans les cookies sur les navigateurs et auxquelles daCode accède grace à la classe PHP `Session'. Cette représentation est en grande partie erronée, mais je la trouve utile pour comprendre le fonctionnement du serveur avec un niveau d'abstraction élevé.



 

Les processus

TODO

 

Les logs


    $ cat /tmp/dacode-sqllog 
   


 

La base MySQL ou PostgreSQL

TODO descriptions des tables