Installer la plateforme de favoris collaboratifs Pligg sur Debian
Pligg est un système de gestion de contenu conçu pour fournir les mêmes fonctionnalités que Digg. Ce guide vous aide à l'installer sur Debian GNU/Linux.
Ce guide est testé sur:
- Debian 5.0 Lenny
- Debian 6.0 Squeeze
Pré-requis
Ce guide nécessite un serveur MySQL disposant du script mysql-tools disponible dans le guide Installer et configurer MySQL sur Debian.
Ce guide nécessite un serveur HTTP avec support du PHP disposant au choix d'un des scripts suivant :
- Le script a2tools disponible dans le guide Installer Apache 2 sur Debian.
- Le script lighty-tools disponible dans le guide Installer Lighttpd et PHP 5 sur Debian.
Paramètres
Renseignez le nom de domaine ou sera disponible l'application :
DOMAIN="liens.domaine-exemple.fr"
Renseignez le protocole de connexion à l'application :
PROTOCOL="http"
Renseignez le nom d'hôte de votre serveur MySQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur) :
MYSQL_HOST="localhost"
Si votre serveur MySQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.
Installation
Installez les locigiels nécessaires au bon fonctionnement de l'application :
command apt-get install php5-mysql unzip
Redémarrez votre serveur HTTP pour prendre en compte les modifications :
test -x /etc/init.d/apache2 && /etc/init.d/apache2 force-reload test -x /etc/init.d/lighttpd && /etc/init.d/lighttpd force-reload
Récupérez l'URL de téléchargement des sources de l'application :
SOURCE_URL="$(command wget --quiet --output-document=- \ "http://pligg.com/download/" \ | command grep "download_1-0b.gif" \ | command sed -e 's|.*href="\([^"]*\)".*|\1|')"
Téléchargez les sources :
command wget "${SOURCE_URL}" \ --output-document="/tmp/pligg.zip"
Décompressez l'archive obtenue :
command unzip -o "/tmp/pligg.zip" -d "/tmp"
Déplacez le dossier obtenu vers son emplacement final :
command mv "/tmp/pligg" "/opt/${DOMAIN}"
Adaptez la structure des dossiers aux recommandations de la LSB :
command mkdir --parent "/var/cache/pligg" command mkdir --parent "/var/lib/pligg/${DOMAIN}" command mv "/opt/${DOMAIN}/cache" "/var/cache/pligg/${DOMAIN}" command mv "/opt/${DOMAIN}/admin/backup" "/var/lib/pligg/${DOMAIN}/backup" command mv "/opt/${DOMAIN}/avatars/groups_uploaded" "/var/lib/pligg/${DOMAIN}/groups_uploaded" command mv "/opt/${DOMAIN}/avatars/user_uploaded" "/var/lib/pligg/${DOMAIN}/user_uploaded" command mv "/opt/${DOMAIN}/languages" "/var/lib/pligg/${DOMAIN}/languages" command ln -s "/var/cache/pligg/${DOMAIN}" "/opt/${DOMAIN}/cache" command ln -s "/var/lib/pligg/${DOMAIN}/languages" "/opt/${DOMAIN}/languages" command ln -s "/var/lib/pligg/${DOMAIN}/backup" "/opt/${DOMAIN}/admin/backup" command ln -s "/var/lib/pligg/${DOMAIN}/groups_uploaded" "/opt/${DOMAIN}/avatars/groups_uploaded" command ln -s "/var/lib/pligg/${DOMAIN}/user_uploaded" "/opt/${DOMAIN}/avatars/user_uploaded" command chown -R www-data:www-data "/var/cache/pligg/${DOMAIN}" command chown -R www-data:www-data "/var/lib/pligg/${DOMAIN}"
Créez les fichier de configuration :
command cp "/opt/${DOMAIN}/libs/dbconnect.php.default" "/opt/${DOMAIN}/libs/dbconnect.php" command cp "/opt/${DOMAIN}/settings.php.default" "/opt/${DOMAIN}/settings.php" command chown www-data:www-data "/opt/${DOMAIN}/libs/dbconnect.php" command chown www-data:www-data "/opt/${DOMAIN}/settings.php"
Supprimez le fichier téléchargé :
command rm "/tmp/pligg.zip"
Configuration
Créez la base de données :
if [ "${MYSQL_HOST}" = "localhost" ]; then MYSQL_PARAMS=$(command mysql-tools create-domain-db "${DOMAIN}") else command echo "Saisissez le mot de passe de l'utilisateur root MySQL :" command read PASSWORD MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools create-domain-db '${DOMAIN}' '$(command cat /etc/mailname)' '${PASSWORD}'") fi
Récupérez les paramètres de la nouvelle base de données et notez les précieusement :
echo "${MYSQL_PARAMS}"
Générez un préfixe de table aléatoire à utiliser lors du processus d'installation :
echo "$(command apg -q -a 0 -n 1 -M NCL)_"
Créez la configuration du serveur HTTP pour votre domaine :
if [ -x "/usr/bin/a2tools" ]; then command a2tools add-vhost "${DOMAIN}" "/opt/${DOMAIN}/" fi if [ -x "/usr/bin/lighty-tools" ]; then command lighty-tools add-vhost "${DOMAIN}" "/opt/${DOMAIN}/" fi
L'application devrait maintenant être disponible sur le nom de domaine que vous avez choisi.
Accédez au processus d'installation via l'URL fournie par :
echo "http://${DOMAIN}/install/install.php"
Une fois l'installation terminée, sécurisez l'ensemble :
command chown root:root "/opt/${DOMAIN}/libs/dbconnect.php" command rm -r "/opt/${DOMAIN}/install"
Sauvegardes
Pour sauvegarder votre installation, je vous propose d'utiliser Backup Manager. Pour l'installer, vous pouvez suivre mon guide:
Installer et configurer Backup Manager sur Debian
Une fois Backup Manager installé, configurez la sauvegarde des fichiers de l'application :
command backup-manager-tools add "/opt/${DOMAIN}" command backup-manager-tools add "/var/lib/pligg/${DOMAIN}"
Important: Sauvegarder les fichiers ne suffit pas ! Il faut aussi sauvegarder la base de données. La procédure pour ce faire est disponible dans l'article MySQL sur Debian.
Remerciements
- Merci aux développeurs de Pligg.