Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
serveur:zope [Le 05/11/2007, 01:13] 86.194.248.85 |
— (Version actuelle) | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | <code> | ||
| - | Version : Gutsy, Feisty, Edgy (Dapper ?) | ||
| - | </code> | ||
| - | |||
| - | [[https://wiki.ubuntu.com/ZopeOnUbuntu|Traduction originale]] par [[utilisateurs:tbonacco|Thomas]] | ||
| - | |||
| - | Mise à jour par [[utilisateurs:SunWukong|SunWukong]], [[utilisateurs:Rorist|Rorist]] | ||
| - | |||
| - | {{tag>zope serveur edgy feisty gutsy python tutoriel developpement}} | ||
| - | |||
| - | |||
| - | ====== Installer un serveur d'applications Zope sur Ubuntu ====== | ||
| - | |||
| - | ===== À propos ===== | ||
| - | Actuellement, il existe deux "branches" majeures de Zope : la 2.9.x et la 3.x. | ||
| - | L'idée étant qu'à la base, Zope 3 devait être une réécriture de zéro de Zope 2 : nouveaux concepts, abandon de certaines lourdeurs de Zope 2, volonté d'être plus "pythonic", etc. | ||
| - | |||
| - | Le projet Zope 3 a commencé il y a plusieurs années déjà et est arrivé à maturité il y a un peu plus d'un an, mais sans compatibilité avec Zope 2. Or Zope 2 possède beaucoup d'extensions : CMS (Plone, CPS), produits de forum, wiki, etc. | ||
| - | Le développement de Zope 2 se poursuit donc et la technologie de Zope 3 est petit à petit rétro-intégrée dans Zope 2. La version Zope 2.10 ne devrait pas tarder à sortir. | ||
| - | |||
| - | Bref aujourd'hui, AMHA, il faut plus voir Zope 3 comme une sorte de laboratoire d'idées de la communauté Zope. Et Zope 2 la version de référence dans laquelle est intégré petit à petit le code de Zope 3 pour une migration en douceur de toutes les extensions déjà développées pour Zope 2. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== Préambule ===== | ||
| - | |||
| - | La présente procédure permet d'installer le serveur d'application Zope sur les distributions Edgy Eft, Feisty Fawn et Gutsy Gibbon. Peut-être fonctionne-t'elle aussi sous Dapper (merci de faire un retour d'expérience ici). | ||
| - | |||
| - | Pour les versions antérieures d'Ubuntu, la procédure est légèrement différente comme vous le constaterez en suivant les consignes sur [[serveur:zope_legacy]] | ||
| - | |||
| - | |||
| - | ===== Installation ===== | ||
| - | |||
| - | Assurez-vous d'avoir pris en compte les dépôts "Universe" dans ''/etc/apt/sources.list''. Pour notre grand confort, les [[https://wiki.ubuntu.com/MOTU|MotU]] nous ont préparé un méta-paquet qui permettra d'installer tout le nécessaire à l'aide d'un seul paquet et du jeu des inter-dépendances entre les paquets. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== L'outil graphique Synaptic : ==== | ||
| - | Lancer Synaptic (s'il est installé) et sélectionner le paquet ''zope'' et ''python-zodb'' | ||
| - | |||
| - | |||
| - | ==== La ligne de commande : ==== | ||
| - | $ sudo apt-get install zope python-zodb | ||
| - | |||
| - | À la fin de l'installation en mode console, on peut voir un message apparaitre : | ||
| - | Zope2.9: no instances found. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== Création d'une instance Zope ===== | ||
| - | Exécuter la commande suivante pour créer une instance de Zope. | ||
| - | |||
| - | La commande vous demandera le nom d'un répertoire pour y stocker l'instance de Zope (constituée des ces données, fichiers de configuration, journaux, etc.). Personnellement, je l'ai placée dans ''/var/local/zope''. Si d'aventure un lecteur propose un endroit plus judicieux... | ||
| - | |||
| - | La commande réclame aussi un couple d'authentification utilisateur/motdepasse. | ||
| - | |||
| - | $ cd /usr/lib/zope2.9/bin | ||
| - | $ sudo python mkzopeinstance.py | ||
| - | |||
| - | Please choose a directory in which you'd like to install | ||
| - | Zope "instance home" files such as database files, configuration | ||
| - | files, etc. | ||
| - | | ||
| - | Directory: /var/local/zope/ | ||
| - | Please choose a username and password for the initial user. | ||
| - | These will be the credentials you use to initially manage | ||
| - | your new Zope instance. | ||
| - | | ||
| - | Username: Dupont | ||
| - | Password: **************** | ||
| - | Verify password: **************** | ||
| - | |||
| - | |||
| - | |||
| - | Notre instance est alors créée comme on peut le constater : | ||
| - | $ cd /var/local/zope/ | ||
| - | $ ls -l | ||
| - | |||
| - | total 40 | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 16:38 bin | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 16:38 etc | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 16:38 Extensions | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 16:38 import | ||
| - | -rw-r--r-- 1 root staff 42 2007-02-26 16:38 inituser | ||
| - | drwxr-xr-x 3 zope zope 4096 2007-02-26 16:38 lib | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 17:01 log | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 16:38 Products | ||
| - | -rw-r--r-- 1 zope zope 481 2007-02-26 16:38 README.txt | ||
| - | drwxr-xr-x 2 zope zope 4096 2007-02-26 17:01 var | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== Démarrons notre instance Zope ===== | ||
| - | <note important>Gutsy: Afin que zope utilise python 2.4, il faut le lui spécifier en editant les fichiers ///var/local/zope/bin/runzope// et ///var/local/zope/bin/zopectl// à la ligne 2 comme ceci | ||
| - | PYTHON="/usr/bin/python2.4" | ||
| - | </note> | ||
| - | |||
| - | Nous ajoutons notre script de démarrage dans le dossier //instance// de zope | ||
| - | $ ln -s /var/local/zope/bin/zopectl /var/lib/zope2.9/instance/. | ||
| - | Nous pouvons lancer Zope | ||
| - | $ /etc/init.d/zope2.9 start | ||
| - | |||
| - | |||
| - | |||
| - | ===== Zope is alive ! ===== | ||
| - | Comme on peut le voir dans un navigateur, notre serveur Zope est opérationnel : [[http://localhost:9673/|http://localhost:9673/]] | ||
| - | Comme on peut le remarquer dans l'URL ci-dessus, le port par défaut est 9673 (Pensez à ajuster vos firewall et autres routeurs si vous travaillez sur un serveur distant). | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== Administration du serveur ===== | ||
| - | À l'aide des identifiants d'authentification indiqués à la création de l'instance, on peut administrer le serveur à partir de l'URL suivante : | ||
| - | [[http://localhost:9673/manage|http://localhost:9673/manage]] | ||
| - | <<<Et comment faire lorsque, sur Ubuntu-serveur, on n'a pas de navigateur ?>>> | ||
| - | D'autres commandes sont disponibles dans ''/var/local/zope/bin''. | ||
| - | |||
| - | Des journaux sont disponibles dans ''/var/local/zope/log''. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== Apache et Zope 2 ===== | ||
| - | |||
| - | Nous considérons Apache 2.x installé et fonctionnel, ainsi que Zope 2. | ||
| - | |||
| - | * Activer les modules | ||
| - | <code> | ||
| - | $ a2enmod proxy | ||
| - | $ a2enmod proxy_http | ||
| - | $ a2enmod rewrite | ||
| - | </code> | ||
| - | * Editer votre fichier de configuration Apache, /etc/apache2/sites-available/default. | ||
| - | * Ajouter les lignes suivantes dans un vhost ou en général: | ||
| - | <code> | ||
| - | UseCanonicalName On # permet d'eviter de taper les / finaux | ||
| - | RewriteEngine On | ||
| - | RewriteRule ^/adressederedirection(.*) http://localhost:9673/VirtualHostBase/http/votreurl.com:80/VirtualHostRoot/_vh_adressederedirection/$1 [L,P] | ||
| - | |||
| - | RewriteLog "/var/log/apache2/rewrite.log" | ||
| - | RewriteLogLevel 3 | ||
| - | </code> | ||
| - | Cette règle peut paraître abject, mais tous ces paramètres sont utiles à Zope pour bien nous servir ;-) | ||
| - | <<<RewriteRule ^/adressederedirection(.*)htpp://localhost:9673/VirtualHostBase/hpp/votreurl.com:80/VirtualHostRoot/_vh_adressederedirection/$1 [L,P] = ?????>>> C'est peu compréhensible | ||
| - | |||
| - | 9673 est le port du serveur Zope. | ||
| - | |||
| - | Si vous passez par SSL et https vous devez p.ex. le spécifier comme ceci: https/votreurl.com:443 | ||
| - | |||
| - | * Editer le fichier /etc/apache2/mods-available/proxy.conf | ||
| - | * Tout effacer et remplacer par ceci, toujours en adaptant les valeurs. | ||
| - | <code> | ||
| - | ProxyRequests Off | ||
| - | ProxyVia On | ||
| - | <Proxy *> | ||
| - | Order deny,allow | ||
| - | Allow from votreurl.com | ||
| - | Allow from localhost | ||
| - | </Proxy> | ||
| - | </code> | ||
| - | |||
| - | * Enfin, recharger la config d'apache | ||
| - | <code> | ||
| - | $ /etc/init.d/apache2 force-reload | ||
| - | </code> | ||
| - | |||
| - | |||
| - | ===== Apprendre Zope ===== | ||
| - | Voici un lien vers la [[http://www.zope.org/Documentation/ZopeBook/|documentation de Zope]] | ||
| - | |||
| - | Un tutoriel est disponible dans l'instance nouvellement créée et permet de découvrir quelques fonctionnalités de Zope dans son interface d'administration. Pour le débutant, c'est un excellent point de départ, chaudement recommandé ! | ||
| - | |||
| - | {{serveur:zope2_admin_01.png|}} | ||
| - | |||
| - | |||
| - | ===== Liens ===== | ||
| - | [[http://www.zope.org|Le site du projet Zope]] | ||
| - | |||
| - | [[http://www.plope.com/Books/2_7Edition|Zope 2.9 Documentation]] [EN] | ||
| - | |||
| - | [[http://www.zopera.org/|Le portail Zope francophone]] | ||
| - | |||
| - | [[http://www.plone.org|Le site de Plone]] | ||
| - | |||