« Humhub » : différence entre les versions
m (→Debian 11) |
m (→Mettre à jour) |
||
(7 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 6 : | Ligne 6 : | ||
=Installation= | =Installation= | ||
== Debian | == Debian 12 == | ||
=== Prérequis === | |||
On va d'abord satisfaire les prérequis : https://docs.humhub.org/docs/admin/requirements | |||
# Installer Apache2<source>apt install apache2 libapache2-mod-fcgid</source> | # Installer Apache2<source>apt install apache2 libapache2-mod-fcgid</source> | ||
# Installer PHP 8.2 : [Debian 11:PHP8.2] | # Installer PHP 8.2 : [Debian 11:PHP8.2] | ||
apt install php8.2-{imagick, gd, curl, zip, mysql, ldap, intl, apcu, sqlite3, fpm} | apt install php8.2-{imagick,gd,curl,zip,mysql,ldap,intl,apcu,sqlite3,fpm} | ||
# Redémarrer Apache pour intégrer toutes les extensions PHP<source>service apache2 restart | # Redémarrer Apache pour intégrer toutes les extensions PHP <source> | ||
service apache2 restart | |||
a2enconf php8.2-fpm | a2enconf php8.2-fpm | ||
</source> | </source> | ||
# Installer serveur SQL <source>apt install mariadb-server | # Installer serveur SQL <source>apt install mariadb-server php-mysql | ||
# Sécuriser le serveur SQL<source>mysql_secure_installation</source> | # Sécuriser le serveur SQL<source> | ||
mysql_secure_installation | |||
</source> | |||
# Valider sans mot de passe, pour répondre Y à Set root password? [Y/n] | # Valider sans mot de passe, pour répondre Y à Set root password? [Y/n] | ||
# Saisir 2 fois le mot de passe root | # Saisir 2 fois le mot de passe root | ||
Ligne 21 : | Ligne 26 : | ||
# Accepter "Remove test database and access to it? [Y/n] Y" | # Accepter "Remove test database and access to it? [Y/n] Y" | ||
# Accepter "Reload privilege tables now? [Y/n] Y" | # Accepter "Reload privilege tables now? [Y/n] Y" | ||
# Se reconnecter avec le compte root<source>mysql -u root -p</source> | # Se reconnecter avec le compte root | ||
use mysql; | <source> | ||
update user set plugin='' where User='root'; | mysql -u root -p | ||
flush privileges; | </source> | ||
# Créer la base de données<source>CREATE DATABASE `humhub` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;</source> | use mysql; | ||
# Donner les droits à un compte créé à la volée<source> GRANT ALL ON `humhub`.* TO `humhub_dbuser`@localhost IDENTIFIED BY '<motdepasse>';</source> | update user set plugin='' where User='root'; | ||
# Recharger les privilèges <source>FLUSH PRIVILEGES;</source> | flush privileges; | ||
# Créer la base de données | |||
<source> | |||
CREATE DATABASE `humhub` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; | |||
</source> | |||
# Donner les droits à un compte créé à la volée | |||
<source> | |||
GRANT ALL ON `humhub`.* TO `humhub_dbuser`@localhost IDENTIFIED BY '<motdepasse>'; | |||
</source> | |||
# Recharger les privilèges | |||
<source> | |||
FLUSH PRIVILEGES; | |||
</source> | |||
# Et sortir<source>exit;</source> | # Et sortir<source>exit;</source> | ||
# Activer FPM <source> | # Activer FPM | ||
<source> | |||
a2enmod proxy_fcgi setenvif && a2enconf php8.2-fpm | a2enmod proxy_fcgi setenvif && a2enconf php8.2-fpm | ||
systemctl restart apache2 | systemctl restart apache2 | ||
</source> | </source> | ||
=== Installation === | |||
Suivre la procédure d'installation : | |||
# https://docs.humhub.org/docs/admin/server-setup | |||
# https://docs.humhub.org/docs/admin/installation/ | |||
=== Finalisation === | |||
# Création des CronTab | |||
crontab -e -u www-data | |||
## Sélectionner "nano" puis copier les 2 lignes suivantes tout à la fin : | |||
* * * * * /var/www/humhub/protected/yii queue/run >/dev/null 2>&1 | |||
* * * * * /var/www/humhub/protected/yii cron/run >/dev/null 2>&1 | |||
# Pour finaliser les pretty URL, quelques particularités : | |||
===Configuration des Pretty URL=== | |||
Par défaut, l’URL de HumHub inclut un fichier index.php dans l’adresse, ce qui donne une URL du type « https://exemple.com/index.php?r=dashboard%2Fdashboard », par exemple. En utilisant la fonction des Pretty URL ou URL Rewriting, vous pouvez créer des URL plus courtes et plus simples à déchiffrer, telles que « https://exemple.com/dashboard ». | |||
Pour activer cette fonction, il faut modifier la configuration de HumHub et éventuellement celle du serveur web. | |||
Du côté de HumHub, vous devrez modifier le fichier de configuration | |||
/var/www/humhub/protected/config/common.php en y ajoutant le bloc suivant : | |||
'components' => [ | |||
'urlManager' => [ | |||
'showScriptName' => false, | |||
'enablePrettyUrl' => true | |||
] | |||
] | |||
Notre documentation propose une description plus détaillée des Pretty URL. | |||
==XSendFile : Téléchargement des PJ== | ==XSendFile : Téléchargement des PJ== | ||
Ligne 204 : | Ligne 249 : | ||
* https://docs.humhub.org/docs/admin/backup/ | * https://docs.humhub.org/docs/admin/backup/ | ||
* https://docs.humhub.org/docs/admin/search/ | * https://docs.humhub.org/docs/admin/search/ | ||
== Commandes en ligne CLI == | |||
* https://docs.humhub.org/docs/admin/console | |||
==Mettre à jour== | ==Mettre à jour== | ||
Faire un backup des bases de données et des fichiers | Faire un backup des bases de données et des fichiers | ||
Ligne 210 : | Ligne 257 : | ||
/var/www/<nom du répertoire contenant HumHub>/protected/yiic update | /var/www/<nom du répertoire contenant HumHub>/protected/yiic update | ||
</source> | </source> | ||
== Nettoyer les anciens backups == | |||
Il arrive que le serveur sature si trop de backups saturent l'espace disque ou les ionodes sur Linux. Dans ce cas, le site devient inutilisable. | |||
Il faut faire du ménage dans le répertoire "/protected/runtime/updater/backups" en supprimant les plus anciennes sauvegardes évidemment. | |||
=Sécurité HumHub= | |||
Je n'ai pas trouvé trop d'alertes sur le produit. | |||
== Recommandations == | |||
* https://docs.humhub.org/docs/admin/security/ | |||
Coté Framework YII : | |||
* https://www.yiiframework.com/doc/guide/2.0/en/security-best-practices#avoiding-sql-injections |
Dernière version du 27 mai 2025 à 22:48
J'ai recherché récemment un outil permettant de créer un petit réseau social au niveau du boulot.
L'outil devait permettre le travail collaboratif, l'échange de documents, de gérer des groupes.
Je suis tombé sur HumHub que je n'avais jamais testé, et pour cause, l'outil est jeune mais extrêmement prometteur.