Le labo

Bidouilles et prises de notes en vrac

Accueil > Docs > Nextcloud sur un hébergement mutualisé ?

Nextcloud sur un hébergement mutualisé ?

jeudi 23 janvier 2020, par b_b

Quelques notes en vrac à propos de l’installation de nextcloud sur un mutu OVH & sur un simple hosting chez GANDI.

Chez GANDI

Le test a été effectué sur une instance simple hosting d’entrée de gamme, l’option S+.

Configuration de base

La page settings/admin/overview affiche quelques avertissements qu’on peut corriger pour certains, mais pas tous :

  • La limite de mémoire PHP est inférieure à la valeur recommandée de 512 Mo.
  • L’en-tête HTTP "Strict-Transport-Security" n’est pas configurée à au moins "15552000" secondes.
  • Aucun cache mémoire n’est configuré.
  • Le PHP OPcache n’est pas correctement configuré.

Pour corriger le second point il faut ajouter la règle suivante au .htaccess de nextcloud, puisqu’on n’a pas la main sur la déclaration des vhosts sur ce type d’hébergement :

Tâches de fond

Gandi propose du pseudo CRON basé sur anacron, le problème est qu’on ne peut pas baisser la fréquence à moins d’une heure [1]. Pour contourner ça, on va fourber à l’aide d’un petit script (appelé toutes les heures par le CRON système) qui lancera le CRON de nextcloud toutes les 5 minutes [2]. Créez le script dans votre dossier home avec nano /home/hosting-user/nextcloud.sh et collez-y le contenu suivant :

Il ne reste plus qu’à appeler ce script depuis le CRON système toutes les heures, nano /srv/data/etc/cron/anacrontab pour y ajouter :

1@hourly 0 nextcloud_cron /srv/data/home/nextcloud.sh

Mise à jour

Lors de ma tentative de mise à jour de la version 17 à 18, l’updater en mode web est resté bloqué à l’étape 3, certainement à cause du manque de ressource de l’hébergement ou d’un timeout. Pour débloquer la situation et passer par la mise à jour en CLI, il faut supprimer le fichier data/updater-xxxxxxxxxxxx/.step [3]. Après ça, on peut lancer la mise à jour en CLI et ça se passe bien.

Chez OVH

Le test a été effectué sur un compte de type "pro2014".

Ça semble pas mal fonctionner, à condition d’activer PHP en mode CGI à l’aide app.engine=phpcgi [4]. Étonnamment nextcloud était presque inutilisable en mode FPM, celui proposé par défaut par OVH...

Tâches de fond

Comme chez Gandi, on peut lancer des tâches CRON sur un mutu OVH [5], mais celles-ci ont fréquence limitée à une heure max aussi. Perso j’ai choisi d’utiliser le mode Webcron de nextcloud et d’appeler l’url de celui-ci toutes les 5 minutes depuis un serveur dédié. Il est aussi possible d’utiliser des services externes pour ça, on pourrait même le faire simplement avec genie depuis un site en SPIP ;)