Blog de Djan GICQUEL

Informagicien, crypto-convaincu, adorateur des internets 2.0, des chats et des logiciels libres

Monter une instance Friendica avec Lighttpd

Publié le jeudi 16 septembre 2021, par Djan

Mis à jour le vendredi 22 décembre 2023

Mots clés : fédiverse, internet décentralisé, logiciels libres, réseau social numérique,

L’instance Diaspora* de Framasoft va fermer ses portes en octobre. Ceux qui veulent continuer à utiliser Diaspora doivent donc chercher un autre serveur. C’est dans ce cadre que j’ai tenté et réussi à monter mon serveur Friendica, une idée qui me taraudait depuis longtemps.

Friendica est un réseau social fédéré qui peut se connecter à d’autres réseaux sociaux. La grande force de Friendica est qu’il peut interagir avec quantité d’autre réseau libre à savoir Diaspora, Mastodon mais aussi Peertube, Pleroma et enfin Statusnet/GNUSocial. On ne retrouve donc pas isolé du Fediverse. Sa deuxième grande force c’est qu’il utilise des scripts php et une BDD Mysql donc quelque chose de très standard.

Je me base sur la doc officielle pour installer mon instance Friendica. Sur la page d’installation on peut lire qu’il faut avec accès à la ligne de commande pour configurer composer. Il faut également un serveur email pour faire fonctionner Friendica, j’utilise Postfix pour ma part.

Préparatifs

La première chose à faire est de créer un vhost Lighttpd. Je me suis inspiré de la conf donné par le site officiel, mais elle comporte une erreur de syntaxe. Voici donc le fichier revu et corrigé. Évidemment il faudra l’adapter à votre config. J’ai créé un sous-domaine pour ma part. La documentation recommande soit un sous-domaine soit un domaine dédié mais pas de sous-répertoire (https://mondomaine.fr/friendica) sinon la fédération pourrait ne pas fonctionner et donc vous ne pourrez joindre aucun serveur.

Ensuite on met en place le certificat https. Attention, mettez bien en place le certificat avant de commencer l’installation, sinon tous les liens seront générés en http et aucun style ne sera appliqué à la page quand vous passerez en https.

J’utilise pour ma part acme.sh avec un script maison pour générer les certificats. Attention, dans la nouvelle version de acme.sh le fournisseur par défaut a changé, j’ai donc forcé Let’s encrypt.

Téléchargement

On peut commencer l’installation. On se connecte en ssh à son serveur puis on crée un nouveau dossier et on se déplace dedans.

On télécharge les fichiers depuis la page de publication. Dans mon cas c’est la version 2021.7.

Et on décompresse.

On déplace les fichiers dans le bon répertoire et on supprime l’archive.

On peut aussi télécharger les plugins pour étendre les fonctionnalités de Friendica et faire de la publication croisée entre Friendica et Diaspora par exemple.

On va créer un dossier storage pour éviter de stocker les images et fichiers dans la base de donnée.

Et on finit par appliquer les bons droits.

Création de la base de donnée

Pour créer la BDD, j’utilise adminer en remplacement de phpmyadmin qui est beaucoup plus véloce et qui sait utiliser plusieurs formats de BDD. Je crée une BDD que j’appelle friendica et j’ajoute un utilisateur qui aura les pleins droits sur cette BDD.

Création de la BDD MySQL
Nom de la BDD
Réglages des droits de la BDD

Installation

Parfait on est prêt à commencer l’installation. On se connecte à l’interface web avec l’adresse https://friendica.mondomaine.fr/. La page nous dit qu’il faut utiliser composer pour récupérer les bibliothèques demandées par Friendica.

Après ça on actualise la page et on est prêt à commencer l’installation. Normalement tous les éléments sont verts si vous avez les extensions php requises. On fait donc l’installation comme n’importe quel CMS. On renseigne la BDD MySQL et l’identifiant créé plus tôt.

Une fois l’installation terminée on regarde ses emails pour avoir le lien d’activation du compte. C’est un peu bateau mais pensez vraiment à regarder vos SPAMS, encore plus si c’est un serveur auto-hébergé.

Ensuite on va configurer une dernière chose, le stockage de fichier en tant que fichiers et non comme blob dans la BDD. Rendez dans les réglages admin de votre instance. Dans la partie « Administration - site » puis dans « Téléversement de fichier ». J’ai choisi « filesystem » pour l’option « Destination du stockage de fichier » et j’indique le dossier « storage » qu’on a créé. J’ai laissé les autres paramètres par défaut.

Réglage du storage dans Friendica

Cronjob

La dernière étape c’est configurer le cronjob pour le worker de Friendica.

Et on ajoute ceci au fichier cron. J’ai choisi d’exécuter la tâche toutes les 10 min.


Bien que la procédure soit décrite pour Lighttpd, elle ne devrait pas différer énormément avec Apache.

Un message, un commentaire ?

Note : Ce forum n'est pas un espace SAV. Merci de soumettre vos problèmes sur un forum spécialisé en rapport avec votre question. Si la question concerne un script que j'ai écrit merci de me contacter par courriel.

Qui êtes-vous ?
Votre message

Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)


Dernières brèves

Quand la complexité prend le pouvoir 27 février

Internet en 7 protocoles pour les nulls 23 février

Faille critique dans Outlook 22 février

IA : le devenir légume de l’humanité ? 21 février

Allez dématérialiser vos mères 10 février

La CNIL accusée de ne pas remplir « sa mission de veiller au respect du RGPD » 7 février

Le code a changé : Une vie sans Internet 21 janvier

Immersion dans un DATACENTRE avec OVHcloud à Roubaix 8 janvier

ChatGPT vient de devenir dangereux 28 décembre 2023

Les algorithmes menacent-ils l’humanité ? 26 décembre 2023

Dernière brève et flux RSS 24 décembre 2023

Cyberattaque : la carte des villes, départements et hôpitaux victimes en 2023 19 décembre 2023

Google Drive et le voyage dans le temps 4 décembre 2023

Outlook copie vos données vers les serveurs Microsoft 15 novembre 2023

Les VPN sont-ils utiles ? 1er novembre 2023


Articles épinglés

Rechercher

Agenda du libre en Alsace

Strasbourg : Halte à l’Obsolescence et au Pistage, Le samedi 16 mars 2024 de 14h00 à 17h00.

Maxéville : Assemblée générale, Le vendredi 8 mars 2024 de 20h30 à 23h59.

Vandœuvre-lès-Nancy : Partage de connaissances autour du navigateur Mozilla Firefox et de ses paramétrages, Le mercredi 21 février 2024 de 18h00 à 20h00.

Metz : Café numérique : naviguer sur internet en toute sécurité, Le samedi 23 mars 2024 de 14h00 à 16h00.

Metz : Réunion du BUG : initiation aux logiciels graphiques, Le samedi 16 mars 2024 de 14h00 à 17h00.


no-gafam-zone
Onestlà!
Web0 manifesto