Nextcloud est le fork d’ownCloud lancé par son propre créateur  Frank Karlitschek. Le projet se veut plus ouvert que son prédécesseur et apporte de nouvelles fonctionnalités jusqu’ici disponibles uniquement dans la version entreprise d’ownCloud. Suivez le guide pour installer Nextcloud sur votre serveur !

Pré-requis

  • Un serveur sous Debian/Ubuntu
  • LEMP en place et configuré (voir ce tuto)
  • Un peu de patience…

Création de la base de données

On se connecte à notre base de données en ligne de commande avec l’utilisateur root :

On va maintenant créer une base de données nextcloud ainsi que l’utilisateur associé. Pensez à modifier le mot de passe par celui de votre choix.

Retenez bien les informations indiquées car elles seront nécessaires lors de la mise en route de votre installation Nextcloud.

Configuration de nginx

Nous allons partir du principe que la configuration de base de votre serveur nginx est faite. Voici donc un exemple de vhost pour Nextcloud, basé sur les recommandations de la documentation officielle. Nous installons ici Nextcloud sur un sous-domaine cloud.domain.tld avec un certificat généré via Let’s Encrypt.

Sans oublier de redémarrer nginx pour prendre en compte les modifications :

Installation de Nextcloud

Nous allons maintenant passer à l’installation de Nextcloud. On va se placer dans le répertoire /var/www, télécharger l’archive de la dernière version et l’extraire. Pensez à vérifier si une nouvelle version est disponible directement sur le site et adaptez les commandes en conséquence.

Avant de lancer le setup, nous allons mettre en place les bonnes permissions sur les fichiers de Nextcloud. Pour cela, la documentation officielle propose un petit script à lancer avant d’accéder à la page d’installation.

Les permissions sont maintenant mises en place sur les fichiers de l’application et nous pouvons passer à la phase finale de l’installation en lançant le wizard d’installation. On se rend donc sur https://cloud.domain.tld pour créer l’utilisateur administrateur et indiquer les paramètres de la base de données créée plus haut.

Nextcloud Wizard


Votre installation de Nextcloud est maintenant terminée. Si vous êtres un habitué d’ownCloud, vous ne devrez pas être trop dépaysé puisque l’interface est strictement identique. Seul un léger refresh graphique a été effectué. N’hésitez pas à parcourir les différents menus pour découvrir les quelques fonctions exclusives à Nextcloud.

Partager
Technicien réseau pour le Groupe La Poste, je suis passionné par les technologies de l'information. J'aime partager mes connaissances et découvertes sur la toile ainsi que rédiger des tests de produits high tech. N'hésitez pas à me suivre sur les réseaux sociaux.

Poster un Commentaire

47 Commentaires sur "Tuto : Nextcloud sur Debian avec nginx"

Me notifier des
avatar
krzysiu
Invité
krzysiu

Bonjour,
Merci pour ce tuto qui est très bien écrit. cependant, je rencontre un problème au redemarrage de nginx après avoir créer le fichier owncloud.conf.
j’ai bien sûr fait le tuto pour installer LEM. mais je ne comprend pas l’erreur, il faut dire que je suis newbie dans ce domaine, est ce quelqu’un pourrais eclairer ma lanterne Merci pour votre aide. Krzysiu
ps : je continu de chercher

Antoine
Invité
Antoine

Bonjour, et tout d’abord MERCI pour les tutos mis à disposition !!!
Deuxièmement, arrivé à la fin de ce tuto, je n’arrive pas à accéder à cloud.nomdomaine.fr … En effet, je suppose qu’il faut faire une manip au niveau des DNS sur ovh mais je ne sais pas lesquelles…

Pourriez-vous m’éclairer ?

Merci

Julien Doclot
Invité
Julien Doclot

Bonjour,

Il vous suffit d’ajouter un enregistrement de type A pour cloud.nomdomaine.fr qui pointe vers l’adresse IP de votre serveur.

Antoine
Invité
Antoine

Bonjour,

En effet, il suffisait d’attendre la nuit pour la maj des DNS … Quel impatient je suis !

Merci beaucoup pour votre réponse ! (et super site au passage !)

Julien Doclot
Invité
Julien Doclot

En effet, une propagation DNS peut prendre jusqu’à 48h. Normalement, elle est propagée plus vite. Il faut donc toujours attendre un peu avant de tester.

ATHE GOMEZ
Invité
Bonjour g reussi l’installation de nextcloud avec votre tuto. Cependant g utilisé la version 7 de php. J’ai une erreur que je n’arrive pas a resoudre même en utilisant le document d’installation Pouvez vous m’aider? : Avertissements de sécurité & configuration php ne semble pas être configuré de manière à récupérer les valeurs des variables d’environnement. Le test de la commande getenv(« PATH ») retourne seulement une réponse vide. Veuillez consulter la documentation d’installation ↗ pour savoir comment configurer php sur votre serveur, en particulier en cas d’utilisation de php-fpm. L’en-tête HTTP « Strict-Transport-Security » n’est pas configurée à « 15552000 » secondes. Pour renforcer la… Read more »
hajar
Invité
hajar

Bonjour j’ai le même probleme que krzyslu , je n’arrive pas à redémarrer Nginx pour qu’il prenne en compte les modifications du fichier de configuration.
Merci de me dire comment puis-je le résoudre

Clu
Invité
Clu

Bonjour Édouard, j’ai bien suivi ton tuto mais à la dernière étape; après avoir valider les données je me retrouve avec une belle erreur 404 et impossible donc de valider l’installation. Un conseil ?

Edouard Patout
Invité
Edouard Patout

Hello Clu, le problème peut venir de plusieurs choses.
Un 404 indique que nginx n’arrive pas à trouver le fichier d’index que le navigateur essaye d’atteindre. Peux-tu nous donner un aperçu des logs de nginx ?

Clu
Invité
Clu
J’ai effectué un nouveau test avant de te répondre et je tombe bien sur une 404. tail -f /var/log/nginx/error.log 2017/08/22 15:08:37 [error] 15610#15610: *1 FastCGI sent in stderr: « Unable to open primary script: /var/www/info.php (No such file or directory) » while reading response header from upstream, client: 192.168.1.15, server: localhost, request: « GET /info.php HTTP/1.1 », upstream: « fastcgi://unix:/run/php/php7.0-fpm.sock: », host: « 192.168.1.16 » 2017/08/22 15:11:35 [error] 15610#15610: *7 directory index of « /var/www/ » is forbidden, client: 192.168.1.15, server: localhost, request: « GET / HTTP/1.1 », host: « 192.168.1.16 » 2017/08/22 15:14:05 [warn] 15711#15711: conflicting server name « localhost » on 0.0.0.0:80, ignored 2017/08/22 15:14:05 [warn] 15714#15714: conflicting server name « localhost » on 0.0.0.0:80, ignored… Read more »
Edouard Patout
Invité
Edouard Patout

Il faudrait que tu ajoutes deux lignes pour loguer les accès à Nextcloud dans ton fichier de configuration nginx :
access_log /var/log/nginx/nextcloud-access.log combined;
error_log /var/log/nginx/nextcloud-error.log error;

Ensuite tu essayes d’accéder et tu cat les logs ici.

A première je dirais qu’il y a un problème de configuration de ton php. Tu as suivi notre tuto LEMP pour l’installation de celui-ci ?

Clu
Invité
Clu
J’ai bien suivi le tuto à la lettre c’est justement ça que je comprend pas, j’ai simplement modifier les « domain.tld » par « localhost » avant la mise en production du serveur. Par contre, vu la sortie de Debian 9 pour Raspberry, ne serait il pas intéressant de faire une m-à-j du tuto LEMP et celui pour Nextcloud ? Je suis même prêt à jouer le tipeur pour motiver les troupes lol Voici les logs: sudo tail -f /var/log/nginx/error.log 2017/08/22 15:08:37 [error] 15610#15610: *1 FastCGI sent in stderr: « Unable to open primary script: /var/www/info.php (No such file or directory) » while reading response header… Read more »
Julien Doclot
Invité

Hello Clu,

Pourrais-tu me dire si tu as d’autres services web qui tournent sur cette machine?

Nous pouvons tout à fait envisager de mettre à jour ce tutoriel pour l’utilisation de Debian 9. Même si au final, cela ne diffère pas beaucoup.

Clu
Invité
Clu

C’est une machine nouvellement installer donc il n’y a rien mise à part les services que le tuto LEMP m’a demander d’installer; sur le serveur qui sera en production il y aura un serveur DNS qui tourneras en parallèle mais ma machine de test est entièrement vierge.
Oui je m’en doute mais vu les nouveautés de Stretch (comme php 7 et mariadb par défaut, etc.), il doit surement y avoir quelques nuances, non ?

Julien Doclot
Invité

Cela ne change pratiquement rien de Debian 8 à Debian 9. A part ce que tu as cité.

Pour le reste, je vois bien le log « Conflicting server name localhost » donc tu dois avoir deux fichiers de configuration avec localhost à mon avis.

Clu
Invité
Clu

« nextcloud.conf » et « default.conf »

Cku
Invité
Cku

En tout cas j’ai beau fouiller partout sur le net, je trouve pas de solutions :/

Edouard Patout
Invité
Edouard Patout

Les erreurs avec le localhost ne sont pas vraiment la cause à mon sens. J’ai ces erreurs de temps en temps sans que ça perturbe le fonctionnement de mon nginx.

Lorsque tu suis le tutoriel LEMP, la page info.php s’affiche correctement ?

Clu
Invité
Clu

Oui bien sûr

green
Invité
green
Bonjour je suid newbie et j’ai suivi vos tutos lemp et celui-ci sur raspbian lite. j’ai installé let’s encrypt avec https://www.supinfo.com/articles/single/3558-installer-certificat-ssl-nginx-avec-let-s-encrypt. résultat j’arrive à faire pointer mon domaine en https sur un repertoire dans /var/www/html/nomdurep/index.php dans lequel il y a <?php phpinfo();. cela marche sans problème sauf que quand je copie dans ce rep les fichier nextcloud 12 là ne considère pas le php de index.php et il me propose le téléchargement de index.php… à noter que j'ai ajouter les lignes du tuto lemp /etc/nginx/nginx.conf après avoir obtenu un accès fonctionnel à la page index.php dans lequel il y a… Read more »
wpDiscuz