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 31/10/2007, 20:14] rorist Zope et Apache2 |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | <code> | ||
- | Version : Feisty, Edgy (Dapper ?) | ||
- | </code> | ||
- | |||
- | [[https://wiki.ubuntu.com/ZopeOnUbuntu|Traduction originale]] par [[utilisateurs:tbonacco|Thomas]] | ||
- | |||
- | Mise à jour par [[utilisateurs:SunWukong|SunWukong]] | ||
- | |||
- | {{tag>zope serveur edgy feisty 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 et Feisty Fawn. 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: zope 2.9 utilise python 2.4, il faut le lui spécifier en editant le fichier /var/local/zope/bin/runzope a la ligne 2 comme ceci | ||
- | PYTHON="/usr/bin/python2.4" | ||
- | </note> | ||
- | |||
- | Toujours dans la console, taper la commande suivante : | ||
- | $ sudo /var/local/zope/bin/runzope& | ||
- | |||
- | |||
- | |||
- | ===== 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]] | ||
- | |||
- | 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_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/ | ||
- | |||
- | 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 ;-) | ||
- | |||
- | 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.zopera.org/|Le portail Zope francophone]] | ||
- | |||
- | [[http://www.plone.org|Le site de Plone]] | ||
- | |||
- | [[http://wiki.zope.org/zope2/ZopeAndApache|Zope 2 and Apache]] [EN] | ||