Spikini : un wiki qui marche avec SPIP

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Mise à jour du 30 mars 2005

Nous nous sommes amusés à modifier Wikini pour qu’il utilise des librairies de SPIP :
-  la connexion à la base de données (inc_connect.php3) ;
-  les règles de typographies (inc_texte.php3) ;
-  l’authentification des visiteurs.

L’idée est la suivante : on met le répertoire spikini/ dans le répertoire SPIP, on renseigne deux champs (le nom du wiki et le titre de sa page d’accueil), et hop.

L’installation prend 20 secondes.

Spikini étant maintenant développé sur SPIP Zone le fichier complet est à télécharger à l’adresse http://zone.spip.org/files/spip-zone/.

La version du 30 mars dispose d’un système rudimentaire de cache qui permet d’acccélérer le rendu des pages. Ce cache est stocké avec le cache de SPIP, il est donc vidé par la commande « vider le cache ». Il n’est pas nécessaire de « recalculer » les pages car le cache ne stocke pas les pages, mais uniquement le résultat de la fonction "propre".

* *

On s’en sert sur SPIP Contrib’ !

Avec le .htaccess suivant :

# pour spikini
## feuilles de style
RewriteRule .*/(wakka(\.basic|\.print)?\.(css|png)) spikini/$1 [L]

## spiperies
# envoi vers la version patchee de spip_cookie (qui regle le cookie-path sur /)
RewriteRule     ^spikini/(spip_cookie\.php3?)       spikini/$1      [QSA,L]

# les autres a la racine
RewriteRule ^spikini/(.*/)?(spip_.*\.(css|php3?)|puce\.gif)   /$2 [QSA,L]

## remonter les IMG/
RewriteRule ^spikini/(IMG/.*) /$1 [QSA,R,L]

## page spikini
RewriteCond %{REQUEST_URI} !^spikini/index\.php3?
RewriteRule ^spikini/(.*) spikini/index.php?wiki=$1 [QSA,L]

* *

Comment gérer une « machine à wikis »

L’intérêt de spikini, c’est de pouvoir gérer une machine où l’on peut créer à la volée autant de wikis que l’on souhaite, comme par exemple sur http://wiki.rezo.net/. Pour cela il suffit de suivre la procédure décrite ci-dessous :

-  1) installer un SPIP récent (1.8a CVS, version de développement), ce qui autorisera spikini à jouer avec la variable $cookie_path et à un contourner un bug de inc_ecrire.php3 (cf. forum ci-dessous).

-  2) installer le répertoire spikini/ à la racine de SPIP.

-  3) mettre les redirections apache qui suivent, dans httpd.conf ou dans .htaccess :

RewriteEngine On

## feuilles de style
RewriteRule ^/(wakka(.basic)?.css)$ /spikini/$1 [L]

## spiperies
# 1) la version patchee de spip_cookie, qui regle le cookie_path sur /
RewriteRule /spip_cookie\.php3?     /spikini$0  [QSA,L]
# 2) les autres a la racine
RewriteCond %{REQUEST_URI} !^/ecrire/
RewriteRule /(spip_.*\.(css|php3?)|puce\.gif)   $0 [QSA,L]

## passer ce qui reste a spikini
RewriteCond %{REQUEST_URI} !^(/ecrire/|/IMG/)
RewriteRule ^/([a-z0-9_]+)/(.*) /spikini/multi.php?wname=$1&wiki=$2 [QSA,L]

## urls incompletes (sans /)
RewriteRule ^/([a-z0-9_]+)$     /$1/ [R,L]

NB : si vous utilisez .htaccess, il faut probablement supprimer les ^/ des RewriteRule... à confirmer dans le forum ci-dessous.

-  4) pour que les visiteurs puissent s’authentifier sur le site public, sans qu’on ait besoin de leur donner accès à l’espace privé, il faut (c’est encore l’infâme bidouille de SPIP) installer, sur un article quelconque, un forum « sur abonnement ».

Discussion

57 discussions

  • Visiteur

    C’est pas mal.

    Je viens de découvrir WikiNi et par la suite SpikiNi.
    Je trouve domage que SpikiNi ne permette pas de commentaire en bas de chaque page.
    De plus il gagnerait a permettre les visiteurs de créer leur profile comme sur WikiNi.
    Cela permettra aux utilisateurs non inscrits dans le site de créer des pages personnalisées.

    Malgré tout il est COOL

    Répondre à ce message

  • Bonjour

    SVP ou placer le fameux fichier httpd.conf

    Répondre à ce message

  • stéphane

    hello,

    j’ai le message d’erreur suivant :

    $_REQUEST[] not found. Wakka requires PHP 4.1.0 or higher

    je suppose que la version php de mon hébergeur est (déjà) trop ancienne ?

    Répondre à ce message

  • Jean-Yves

    J’essaye avec spip qui n’est pas à la racine et ca bricole un peu.

    Je n’arrive pas à me logguer correctement et à m’approprier les pages.

    Répondre à ce message

  • 5

    Testé sur Ouvaton : Ok.

    Testé sur Free : pas glop !

    En haut de la page :

    Warning : session_start() : open(/var/www/free.fr/7/5/monnomdedommaine/sessions/.sess_05d766130527e51f55f334c144d6486d, O_RDWR) failed : No such file or directory (2) in /var/www/free.fr/7/5/monnomdedommaine/spikini/wakka.php on line 731

    En bas de la page :

    Warning : Unknown() : open(/var/www/free.fr/7/5/monnomdedommaine/sessions/.sess_05d766130527e51f55f334c144d6486d, O_RDWR) failed : No such file or directory (2) in Unknown on line 0

    Warning : Unknown() : Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/www/free.fr/7/5/monnomdedommaine/sessions) in Unknown on line 0

    Répondre à ce message

  • Bonjour !

    Merci beaucoup pour votre travail ! Le concept wikini me plait bcp.

    Cependant, j’ai un problème d’affichage.
    Avec IE6 et Mozilla aucun problème mais avec IE5 et Amaya l’affichage n’est pas correct. Je perds tout le cadre gris et je ne peux pas éditer le site.
    J’ai comparé avec le site de spip_contrib et ce problème n’apparait que chez moi. J’ai remarqué que l’URL etait différente. Mon URL est : http://www.esperances.org/saules/spikini/?wiki=PagePrincipale

    Je n’ai pas le index.php qui apparait devant le  ?wiki...

    Je me demande si ca ne provient pas du fichier .htaccess. Je ne savais pas où le mettre, si c’est à la racine de SPIP ou dans le répertoire de Spikini.

    Merci

    Répondre à ce message

  • 1

    Très intéressante cette idée d’intégrer une écriture collaborative ouverte sous la forme d’un wiki à SPIP. Deux questions me viennent toutefois automatiquement en tête : 1- Comment se déroule la gestion du fil RSS/XML du wiki ainsi créé ? 2-Chaque wiki créé pourra-t-il avoir son propre fil XML (ce qu’il faudrait à mon humble avis) ?

    • Il n’y a pas de fil XML associé à ce wiki, ce qui règle le problème :)

    Répondre à ce message

Ajouter un commentaire

Forum sur abonnement

Pour participer à ce forum, vous devez vous enregistrer au préalable. Merci d’indiquer ci-dessous l’identifiant personnel qui vous a été fourni. Si vous n’êtes pas enregistré, vous devez vous inscrire.

ConnexionS’inscriremot de passe oublié ?

Suivre les commentaires : RSS 2.0 | Atom