Installation de Zope 2.9 et Plone 2.5 sur Ubuntu Edgy Eft
Plone est un CMS (Content Management System, aka. Système de Gestion de Contenu) basé sur le serveur d'application python Zope. Ce site par exemple utilise une version très peu modifiée de Plone 2.5. Cet article vous explique comment installer cet outil sur Ubuntu Edgy Eft.
Installation de Zope 2.9
En premier lieu, il vous faut installer Zope :
sudo apt-get install zope2.9
Remarque : ce logiciel nécessite les dépôts Universe.
Nous installons ensuite les dépendances de Plone:
sudo apt-get install wget python-imaging python-elementtree python-libxml2
Vous devez ensuite créer une instance de Zope pour votre site Plone. Commencez par définir le nom de votre instance :
INSTANCE_NAME=plone2.5
Spécifiez aussi le port sur lequel doit écouter votre instance Zope (vous pouvez laisser la valeur par défaut):
ZOPE_PORT=9673
Et exécutez ensuite la commande :
sudo dzhandle --zope-version=2.9 make-instance --service-port=$ZOPE_PORT --addon-mode=manual $INSTANCE_NAME
Remarque : Cette commande vous demande de saisir l'identifiant et mot de passe de votre super-utilisateur Zope. Retenez le précieusement, car c'est grâce à cet utilisateur que vous pourrez effectuer votre installation de Plone.
Votre instance est maintenant crée. Vous pouvez y accéder grâce à la commande :
cd /var/lib/zope2.9/instance/$INSTANCE_NAME
Pour accéder au dossier des fichiers de log de votre instance, utilisez la commande :
cd /var/log/zope2.9/$INSTANCE_NAME
Enfin, pour accéder aux fichiers de configuration :
cd /etc/zope2.9/$INSTANCE_NAME
Vous pouvez maintenant démarrer votre instance Zope :
sudo /var/lib/zope2.9/instance/$INSTANCE_NAME/bin/zopectl start
Votre ZMI (Zope Management Interface) est accessible à l'url suivante : http://localhost:9673/manage. L'identifiant et le mot de passe demandé sont ceux que vous avez choisi lors de la création de l'instance.
Installation de Plone 2.5
Maintenant que notre instance de Zope est fonctionnelle, nous allons y ajouter les produits de Plone 2.5. Nous commençons par télécharger la dernière version de Plone 2.5 (en l'occurence, il s'agit de Plone 2.5.3). Nous la décompressons, et nous la copions dans le répertoire Products de notre instance Zope 2.9. L'ensemble de ces opérations tiens en 2 commandes :
wget --quiet http://plone.googlecode.com/files/Plone-2.5.3-final.tar.gz -O- | tar -xz --directory /tmp
sudo mv /tmp/Plone-2.5.3-final/* /var/lib/zope2.9/instance/$INSTANCE_NAME/Products
sudo chown -R zope:zope /var/lib/zope2.9/instance/$INSTANCE_NAME/Products
Il ne vous reste plus qu'a redémarrer votre instance Zope :
sudo /var/lib/zope2.9/instance/$INSTANCE_NAME/bin/zopectl restart
Enfin, pour installer définitivement votre site Plone, il ne vous reste qu'a ajouter un objet de type Plone Site à la racide de votre ZMI.
Pour aller plus loin
Vous disposez maintenant d'un site Plone fonctionnel. Voici quelques astuces supplémentaires.
Utiliser Zope / Plone derrière un serveur Web Apache 2.
Souvant, le port 80 (HTTP) d'une machine est déjà utilisé par le serveur Apache 2. Voici les manipulation à effectuer afin de rendre votre site accessible sur ce port. En premier lieu, installez Apache 2:
sudo apt-get install apache2
Activez les modules proxy et rewrite de Apache 2:
sudo a2enmod rewrite
sudo a2enmod proxy
Renseignez le nom de domaine de votre site Plone:
WEB_HOST=www.mysite.org
De même renseignez l'id que vous avez saisie dans la ZMI lors de la création de votre site Plone :
PLONE_SITE=plone-site-name
Et exécutez la commande suivante :
sudo sh -c "wget --quiet http://howto.landure.fr/gnu-linux/ubuntu-edgy-eft/developpement-et-serveurs/installation-de-zope-2-9-et-plone-2.5/apache2-template.conf -O- \
| sed -e 's/WEB_HOST/$WEB_HOST/g' -e 's/ZOPE_PORT/$ZOPE_PORT/g' -e 's/PLONE_SITE/$PLONE_SITE/g' > /etc/apache2/sites-available/$WEB_HOST"
Activez votre nouveau site :
sudo a2ensite $WEB_HOST
et redémarrez Apache 2:
sudo /etc/init.d/apache2 restart
Restreindre l'accès à Zope au utilisateurs locaux
Par défaut, une instance Zope écoute sur tous les ports disponibles. N'importe qui présent sur votre réseau peut accéder directement à votre instance Zope sans passer par votre Apache 2. Il suffit pour cela de savoir à quel port se connecter. La ligne de commande suivante va faire en sorte que votre instance Zope n'accepte des connexions que depuis l'hôte local (aka. localhost):
sudo sed -i -e 's/%define HTTPPORT \(\d*\)/%define HTTPPORT 127.0.0.1:\1/' /etc/zope2.9/$INSTANCE_NAME/zope.conf
Ensuite, vous devez redémarrer votre instance.
sudo /var/lib/zope2.9/instance/$INSTANCE_NAME/bin/zopectl restart
acces site plone
par ex : http://votresite.com:8081
instalation plone et zope
Au pire redemarrer une fois pour ativer le serveur mais chez moi ya pas eu besoins de redemarer.
Courage