StarNablog Ceci n'est pas un blog de geek. Enfin presque.

Londres Eté 2006
 

Ajouter à mes favoris Voter pour ce billet Abonnement Commentaires Configurer Webdav sous eZpublish


Publié le : 11/04/07 à 02h14
Mots-clés : My-Blog, Webdav, eZpublish, tutoriel

Qu'est-ce que le protocole Webdav ?

WebDAV ( Web-based Distributed Authoring and Versioning) est un protocole (plus précisément, une extension du protocole HTTP ) défini par le groupe de travail IETF homonyme. Décrit dans la RFC 2518, WebDAV permet de simplifier la gestion de fichiers avec des serveurs distants. Il permet de récupérer, déposer, synchroniser et de publier des fichiers (et dossiers) rapidement et facilement. L'objectif principal de WebDAV est de rendre possible l'écriture à travers le web et pas seulement la lecture de données. Source Wikipédia .

Et sur eZpublish ?

eZpublish ne déroge pas à la règle et c'est bien ce principe qui est appliqué. Le protocole Webdav va permettre la gestion des contenus de notre instance d' eZpublish par des routines bien connues des OS contemporains. L'intérêt s'en retrouve décupler lorsqu'il est question de manipuler massivement du contenu. (Exemple : Galerie d'images)

Les actions de glisser-déposer permettent la création "à la volée" de contenu. En voici une application :

A gauche : Les fichiers sur mon filesystem

A droite : L'arborescence de mon instance d' eZpublish .

Le site officiel d'eZsystems propose une très bonne démonstration de la puissance de Webdav couplé à eZpublish .

Il est alors possible de télécharger des éléments d'un environnement à l''autre. C'est l'objectif qui nous attend au bout de ce tutoriel.

Pré-requis

Il y'a peu de réelles difficultés pour mener à bien ce tutoriel. Comptez une petite heure pour avoir une installation fonctionnelle. Néanmoins sans ces quelques éléments, il vous sera difficile d'obtenir le résultat escompté :

  • Une installation d'eZpublish (testé par mes soins depuis la version 3.6)
  • Des droits suffisants pour configurer votre serveur web (Apache dans notre exemple)
  • Un client Webdav. Différentes solutions s'offrent vous. Nous reviendrons sur ce point.

Pas à pas

Nous partirons du principe que votre installation d' eZpublish est vierge et fraichement installé. J'ai pris mon installation de StarNab.com en local sur mon poste comme exemple. Le nom de domaine employé est une configuration spécifique de ma machine. Pas de panique, il n'existe pas encore de pays ayant pour extension nab :).
Nous chercherons dans notre cas à implémenter le serveur Webdav en vue de l'alimentation des Galeries d'images.

  1. Activer Webdav
    Dans le dossier settings/override, créer un fichier webdav.ini.append.php. Le but est ici de surcharger la configuration par défaut d'eZpublish. Par défaut, l'interface Webdav est en effet désactivé. Le fichier de configuration est situ la racine du dossier settings sur webdav.ini.Vous remarquerez qu'un grand nombre de paramètres sont déprécéis et ont maintenant leur équivalent dans le fichier upload.ini. Voici le contenu de votre nouveau fichier webdav.ini.append.php :

    <?php /*#? ini charset="iso-8859-1"?
    
    [GeneralSettings]
    EnableWebDAV=true
    
    FolderClasses[]=galerie
    
    */ ?>

    La 2ème ligne FolderClasses[]=galerie est spécifique à notre cas. Elle indique au serveur Webdav que les contenus de classe galerie doivent être représentés comme des dossiers. Il devient dès lors possible de naviguer dans ces derniers. Sans cela, elles seront considérés comme des médias téléchargeables, du fait de la présence d'un attribut de type ezimage dans la définition de la classe.

  2. Vider le cache
    A ce stade, Webdav est actif. Mais qu'il soit actif sans que vous puissiez y accèder ne vous mènera pas bien loin.
  3. Configurer votre serveur
    Nous allons dans un 1er temps déclarer un Virtual Host au niveau d' Apache .
    Note : Selon votre OS , votre installation xAMP les pratiques diffèreront quelques peu. Etant un faux-geek, c'est d'une malheureuse démonstration sous Windows dont il faudra vous contenter.
    Ouvrez votre fichier de configuration Apache pour vos vhosts. La bonne pratique veut que le fichier de configuration de vos Virtual Host soit dissocié de votre configuration principale d'Apache. Ajouter ces lignes :

    <Virtualhost webdav.starnab.nab:81>
      <Directory c:\www\starnab.com\ezpublish>
        Options FollowSymLinks Indexes ExecCGI
        AllowOverride None
      </Directory>
      DocumentRoot c:\www\starnab.com\ezpublish
      RewriteEngine On
      RewriteRule . /webdav.php
    </VirtualHost>

    Ceci déclare un nouveau Virtual Host dont les règles s'appliqueront pour les URLs entrantes sur webdav.starnab.nab:81. On remarquera que les règles de réécriture font passer toutes les requêtes par ./webdav.php. A ce stade, tout est prêt. Il ne reste qu'à lancer votre client et faire parler le glisser/déposer.

  4. Accéder à votre interface.

    Pour accéder à votre serveur Webdav, il vous faudra un client adéquat. Les utilisateurs de Windows seront peuvent se tourner vers Internet Explorer : en effet, ce dernier intègre nativement un client Webdav au même titre que Konqueror sous Unix / Linux. Davexplorer peut également être une alternative, mais l'interface s'avère peut attrayante. Cette page recense une liste de client Webdav pour différentes plateformes.
    Internet Explorer - Client Webdav
    Lancer Internet Explorer. Dans le menu supérieur faites Fichier > Ouvrir. Taper l'adresse de votre serveur Webdav, celle définit comme Virtual Host d'Apache http://webdav.starnab.nab:81 dans notre cas sans oublier le "#" de fin. Cocher la case "Ouvrir comme un dossier Web".
  5. Si tout s'est passé correctement, vous devriez atterrir sur un écran semblable à celui-ci où vos siteaccess apparaissent représentés par des dossiers :

Trackbacks - URL : http://www.starnab.com/trackback/id/162

Pas de trackback sur ce billet. URL : http://www.starnab.com/trackback/id/162

Réactions (2 commentaires)

:D
« Webdav »

merci pour ce tutoriel, il m'a aidé dans mes recherches sur eZ publish, et j'espere bien qu'il y aura d'autres tuto comme ceci
Bon courage @+

# posté par Chouik Fatima [Guest] le : 30/07/07 à 16h45

Pas mal le tuto, je verrais bien comment le mettre en oeuvre.

# posté par Yannick K [Guest] le : 11/07/08 à 18h20

...La parole est à vous

Combien font 5 4 ?