Press "Enter" to skip to content

Linux – Debian 10 NextCloud 20

Last updated on 05/09/2023

nextcloud 20.0.4

présentation

Ce tutoriel est destiné aux utilisateurs Linux pour les sytèmes suivants : Debian 10/Raspbian. Il sera expliqué ici, comment configurer Apache2, créer et configurer une base de données afin de pouvoir installer et faire fonctionner NextCloud 20.
Si vous êtes sur un système buster (Debian 10), veuillez vérifier que le chemin /usr/sbin est présent dans votre variable $PATH. Vous pourrez trouver plus d’informations sur cette ressource.


disclaimer

Avant de poursuivre, il est nécessaire de prendre connaissance des indications ci-dessous
Il est recommandé d’effectuer tous les tutoriels proposés par BlackHat-Out sur des serveurs de tests. Même si ces tutoriels sont mis en pratiques sur plusieurs OS, nous avons rencontrés différentes difficultés selon les systèmes. Toutes les manipulations proposées se feront en tant qu’administrateur et nous ne pourrons garantir ou être tenus responsables d’une quelconque manipulation rendant le système inopérant.


PRérequis

version & validation

Debian 10 : Validé le 27/12/20 avec passage php7.4
Raspbian : Non testé le xx/xx/2021 NextCloud : 20.0.4
PHP : 7.4

Status : Nextcloud 20 non compatible avec version phph > 7.4


niveau tutoriel

Habitué de linux et des serveurs web.

niveau requis

Savoir lire
Connaître le concept de DNS (l’histoire avec les domaines)
Connaître le concept de virtualhost


durée d'exécution

Lammers : 2h/4h
Novices : 1h/2h
Habitués de Linux: 30/60 minutes
Habitués apache/mysql : 10/15 minutes


sources listes

Debian 10

deb http://deb.debian.org/debian buster main contrib non-free
deb-src http://deb.debian.org/debian buster main contrib non-free

deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb-src http://deb.debian.org/debian-security/ buster/updates main contrib non-free

deb http://deb.debian.org/debian buster-updates main contrib non-free
deb-src http://deb.debian.org/debian buster-updates main contrib non-free

updates

$ su					
# apt update && apt upgrade -y
Explications des commandes
su

La commande su permet de passer sur un compte administrateur. Partant du principe que vous avez des bases en informatique, toutes les manipulations seront effectuées en tant qu’administrateur système.

apt update/upgrade

-> La commande apt update va permettre de rechercher toutes les mises à jours disponibles pour les paquets installés sur linux.

-> La commande apt upgrade va permettre d’installer toutes les mises à jours disponibles pour les paquets installés sur linux.

-> La commande apt update && upgrade -y permet de concaténer les commandes de recherches et d’installations des mises à jours. L’argument -y permet d’indiquer qu’on approuve bien l’installation.


apache2

préparation du système

# apt install apache2
# mkdir /var/www/nom_du_virtualhost_a_configurer
# chown -R www-data:www-data /var/www/nom_du_virtualhost_a_configurer
# ls -lath /var/www/
# mkdir /var/log/apache2/nom_du_virtualhost
# mkdir /etc/ssl/nom_du_virtualhost
# cd /etc/apache2/sites-available/
# a2dissite 000-default.conf
# nano nom_virtualhost.conf

On fait la combinaison de touches « ctrl+O« , « entrer« , puis « ctrl+x« .

# a2enmod ssl
# a2enmod headers
Explications des commandes
apt install

La commande apt install [package] permet de lancer l’installation du paquet demandé sur debian.

mkdir

La commande mkdir permet la création d’un dossier. Ici le dossier du « nom_du_virtualhost_a_configurer » sera crée et accessible via le chemin indiqué « /var/www/« 

chown

La commande chown permet de changer le propriétaire d’un dossier.

L’argument chown -R permet d’indiquer la récursivité de la commande, de manière à ce que tous les sous-dossiers appartiennent au propriétaire du dossier parent.

L’argument www-data:www-data est le nom et le groupe du nouveau propriétaire du dossier. www-data est l’utilisateur par défaut utilisé par les serveurs web.

ls -lath

La commande ls -lath est la commande ls suivi des options l, a, t, h qui ont la signification suivante :

  • l = permet d’afficher une liste détaillée des caractéristiques de chaque fichier du répertoire (aide pour voir les droits du fichier).
  • a = permet d’afficher tous les fichiers et dossiers d’un répertoire, y compris ceux qui sont cachés (ceux qui commencent par un point « . »).
  • t = permet de trier le contenu des répertoires en fonction de la date et non par ordre alphabétique. Les fichiers les plus récents sont présentés en premier.
  • h = s’utilise de pair avec l comme suit : ls -lh afin d’obtenir les informations de poids d’occupation en plus lisible pour un humain plutôt qu’en octet (d’où -h pour human readable, c’est à dire lisible pour un humain). Avec cette option ls va adapter son affichage en utilisant l’unité la plus adaptée.

Dans notre contexte, la commande ls -lath sur le répertoire /var/www/ va nous permettre de bien confirmer la présence de « www-data:www-data » comme propriétaire du dossier « nom_du_virtualhost_a_configurer« 

nano

La commande nano permet d’accéder à l’éditeur de texte nano présent sur débian. Cette même commande suivi du nom d’un fichier comme nano xxx.conf permet d’ouvrir en mode édition le fichier xxx.conf. Dans le cas où le fichier xxx.conf n’existerait pas, il sera automatiquement créé.

Cette manipulation peut être raccourcis en utilisant la commande « touch nom-du-fichier » qui permet de seulement créer le fichier sans l’ouvrir.

La combinaison de touche ctrl+O dans nano permet d’enregistrer-sous le fichier nouvellement créé.

La combinaison de touche ctrl+X dans nano permet de quitter l’éditeur de texte. Si aucun enregistrement n’a été effectué avant, il sera automatiquement demandé une confirmation de sauvegarde.

commandes apache

La commande apachectl permet d’appeler un suite de commande afin de démarrer, stopper, recharger le service apache ou vérifier la bonne syntaxe des fichiers de configuration du service.

  • L’argument configtest permet de vérifier que tous les fichiers de configurations soient bien paramétrés.
  • La commande a2ensite (= apache2 enable site) permet d’activer les fichiers de configurations des virtualhosts.
  • La commande a2dissite (= apache2 disable site) permet de désactiver les fichiers de configurations des virtualhosts.
  • La commande a2enmod (= apache2 enable module) permet d’activer les modules d’apache. Ici le module ssl et headers ont été activés.
  • La commande a2dismod (= apache2 disable module) permet de désactiver les modules d’apache.
systemctl

La commande systemctl permet de gérer les états des services disponibles sur débian ou raspbian (aussi compatible sur la plupart des distributions linux). Pour l’utiliser il faut indiquer comme premier argument l’action voulu [start/restart/stop/reload] puis le service ciblé [apache2]. L’argument reload permet de recharger le fichier de configuration du serveur sur lequel le système se base pour gérer le service.


virtualhost

configuration du virtualhost

# nano /etc/apache2/sites-available/nom_virtualhost.conf
<VirtualHost *:80>
	
	#################
	# ACCES AU SITE #
	#################
	
	ServerName [NOM SERVEUR ou FQDN]
	ServerAlias [NOM COURT]
	ServerAdmin [xxxx@xxxx.xx]
	DocumentRoot [/CHEMIN/VERS/LE-SITE]
	
	#RewriteEngine On
	#RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
	
	##############
	# CONF BASIC #
	##############
	
	#--GESTION DES DROITS--#
	<Directory [/CHEMIN/VERS/LE-SITE/]>
		Options -Indexes
		Require all granted
	</Directory>
	
	#--GESTION ERREURS--#
	ErrorDocument 404 /erreur.html	

	#--LOGS--#	
	ErrorLog [/CHEMIN/VERS/LES/LOGS/DU-SITE/errors.log]
	LogLevel warn
	CustomLog [/CHEMIN/VERS/LES/LOGS/DU-SITE/acces.log] combined
		
</VirtualHost>
Explications des commandes
Le fichier de configuration

On peut voir deux parties dans le virtualhost présentées ci-dessus.
La première partie est le comportement qu’aura le serveur lorsque qu’un client viendra le contacter par le port 80 (HTTP). Ainsi la deuxième partie (non présente à ce stade du tutoriel), sera le comportement qu’aura le serveur lorsque qu’un client le contactera par le port 443 (HTTPS).
Les virtualhosts sont encadrés par les balises suivantes et <VirtualHost *:[N° PORT]> et </VirtualHost>.

Toutes les lignes précédées du caractère # constituent un commentaire au sein du fichier de configuration. Attention cependant, lorsqu’un commentaire est placé sur la même ligne qu’une instruction, des erreurs de syntaxe peuvent apparaître lors de l’exécution de la commande apachectl configtest et ainsi empêcher le systemctl [restart/reload] apache2.

Dans la configuration actuelle, la partie du fichier gérant le comportement à avoir lorsqu’un client souhaite le contacter par le port 443 est actuellement inexistante. Dans le cas où nous n’avons pas encore généré de certificat auto signé ou « réel » (ici cad approuvé par une autorité de certification reconnue), il sera impossible de se connecter au site via le port 443 ; les navigateurs considérons la connexion comme dangereuse et empêcheront l’accès.

Pour adapter le fichier de configuration à vos besoins, il vous sera nécessaire de modifier toutes les valeurs entre crochets. exemple [votre alias], toutes les valeurs sont arbitraires, vous pouvez mettre ce que vous souhaitez dans la mesure du raisonnable. Les valeurs doivent correspondre à vos besoins et à ce que vous avez défini dans la partie « Préparation d’apache »

Par la suite nous allons vérifier la bonne syntaxe de notre virtualhost puis l’activer.

# apachectl configtest
# cd /etc/apache2/sites-available/
# a2ensite [nom_virtualhost.conf]
# apachectl restart

HTTPS (auto-signé)

configuration du virtualhost

Le certificat auto-signé est généralement choisi lors de l’utilisation en local ou hors utilisation d’un nom de domaine « internet ».

# openssl genrsa -out /etc/ssl/[nom_du_virtualhost]/[nom_de_la_clef].key [4096]
# openssl req -new -x509 -key /etc/ssl/[nom_du_virtualhost]/[nom_de_la_clef].key -subj "/CN=[Nom afficher sur le certificat]" -out /etc/ssl/nextcloud/[nom_de_la_clef].pem
# nano /etc/apache2/sites-available/nom_virtualhost.conf

Il est nécessaire de créer un 2ème virtualhost au sein du même fichier de configuration précédemment édité. Pour ce faire il faudra copier coller le :

<VirtualHost *:80> ... </VirtualHost>

Puis de remplacer « *:80 » par « *:443« . Une fois ceci fait, il sera nécessaire de rajouter les chemins pour atteindre les certificats. Rajoutez les lignes suivante à la fin du VirtualHost *:443 :

SSLEngine on
SSLCertificateFile [/CHEMIN/VERS/LES/LE-CERTIFICAT/certificat.pem]
SSLCertificateKeyFile [/CHEMIN/VERS/LES/LA-CLEF/clef.key]

Une fois ceci effectué, ajouter les lignes suivantes juste après le « DocumentRoot » du VirtualHost *:80, ces lignes permettrons de réécrire les url’s HTTP en HTTPS :

RewriteEngine On
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Voici la configuration finale attendue :

<VirtualHost *:80>
	
	#################
	# ACCES AU SITE #
	#################
	
	ServerName [NOM SERVEUR ou FQDN]
	ServerAlias [NOM COURT]
	ServerAdmin [xxxx@xxxx.xx]
	DocumentRoot [/CHEMIN/VERS/LE-SITE]
	
	RewriteEngine On
	RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
	
	##############
	# CONF BASIC #
	##############
	
	#--GESTION DES DROITS--#
	<Directory [/CHEMIN/VERS/LE-SITE/]>
		Options -Indexes
		Require all granted
	</Directory>
	
	#--GESTION ERREURS--#
	ErrorDocument 404 /erreur.html	

	#--LOGS--#	
	ErrorLog [/CHEMIN/VERS/LES/LOGS/DU-SITE/errors.log]
	LogLevel warn
	CustomLog [/CHEMIN/VERS/LES/LOGS/DU-SITE/acces.log] combined
		
</VirtualHost>

<VirtualHost *:443>
	
	#################
	# ACCES AU SITE #
	#################
	
	ServerName [NOM SERVEUR ou FQDN]
	ServerAlias [NOM COURT]
	ServerAdmin [xxxx@xxxx.xx]
	DocumentRoot [/CHEMIN/VERS/LE-SITE]
	
	##############
	# CONF BASIC #
	##############
	
	#--GESTION DES DROITS--#
	<Directory [/CHEMIN/VERS/LE-SITE/]>
		Options -Indexes
		Require all granted
	</Directory>

	
	#--GESTION ERREURS--#
	ErrorDocument 404 /erreur.html	

	#--LOGS--#	
	ErrorLog [/CHEMIN/VERS/LES/LOGS/DU-SITE/errors.log]
	LogLevel warn
	CustomLog [/CHEMIN/VERS/LES/LOGS/DU-SITE/acces.log] combined
		
	##############
	# CONF HTTPS #
	##############

	SSLEngine on
	SSLCertificateFile [/CHEMIN/VERS/LES/LE-CERTIFICAT/certificat.pem]
	SSLCertificateKeyFile [/CHEMIN/VERS/LES/LA-CLEF/clef.key]

</VirtualHost>
Explications des commandes
Le fichier de configuration

Dans cette partie du tuto, il s’agit de dupliquer la configuration du VirtualHost (vHost) du port 80, vers le port 443 en rajoutant les certificats SSL sur à la fin du vHost du 443 et la redirection http vers https sur le vHost du 80.

OPENSSL

La suite OPENSSL permet la génération de certificats SSL. L’option [4096] permet d’indiquer la taille de la clé en bits.


HTTPS (certbot)

Certbot permet de fournir gratuitement un certificat HTTPS reconnu sur vos domaines.

méthode a

# apt install snapd
# snap install core; sudo snap refresh core
# snap install --classic certbot
# ln -s /snap/bin/certbot /usr/bin/certbot
# certbot --apache

méthode b

--
Uniquement à effectuer sur un raspbian
# mv /etc/pip.conf /etc/pip.conf.backup
--
# mkdir /certbot
# cd /certbot
# wget https://dl.eff.org/certbot-auto
# chmod a+x certbot-auto
# ./certbot-auto
# ./certbot-auto --apache (ou --nginx)
./Selectionner le numéro du site
./Selectionner le numéro [2]
./Saisissez les commandes suivantes	
# ./certbot-auto renew -dry-run
# nano crontab -e
*/12 * * * * /CHEMIN/VERS/certbot-auto renew –quiet –no-self-upgrade
ctrl+o ctrl+x
Explications des commandes
CD

La commande cd permet de se déplacer au sein de l’arborescence Linux. Ici, on indique qu’on souhaite se déplacer dans le dossier certbot à la racine du système débian.

WGET

La commande wget permet de télécharger un paquet directement via un lien web (URL).

chmod a+x

La commande chmod a+x certbot-auto permet de rendre exécutable un script.

3 dernières lignes

Les 3 dernières lignes permettent le renouvellement automatique du certificat SSL qui a une durée de 3 mois via le cron qui est le planificateur de tâche version Linux.


hsts

HTTP Strict Transport Security (HSTS) est un mécanisme de politique de sécurité proposé pour HTTP, permettant à un serveur web de déclarer à un agent utilisateur (comme un navigateur web), compatible, qu’il doit interagir avec lui en utilisant une connexion sécurisée (comme HTTPS). La politique est donc communiquée à l’agent utilisateur par le serveur via la réponse HTTP, dans le champ d’en-tête nommé « Strict-Transport-Security ». La politique spécifie une période de temps durant laquelle l’agent utilisateur doit accéder au serveur uniquement de façon sécurisée. Source Wikipédia && Complément d’informations via Developper.Mozilla (en).

# nano /etc/apache2/sites-available/nom_du_virtualhost-ssl.conf

Ajoutez les lignes suivantes juste au dessus du </VirtualHost>

<IfModule mod_headers.c>
	Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
</IfModule>

php

configurer apache et php

Les commandes citées ci-dessous vous permettront d’installer et configurer PHP pour apache. Généralement, on peut choisir la version php en changeant « 7.4 » par la version voulu exemple : « 8.0 ».

# apt -y install lsb-release apt-transport-https ca-certificates
# wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
# echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php7.list
# apt update && apt upgrade -y
# apt install libapache2-mod-php7.4 php7.4 php7.4-xml php7.4-curl php7.4-gd php7.4 php7.4-cgi php7.4-cli php7.4-zip php7.4-bcmath php7.4-gmp php7.4-mysql php7.4-mbstring php7.4-intl php7.4-imagick php7.4-gd -y
# nano /etc/php/7.4/apache2/php.ini

Fichier de conf php.ini
CTRL+W pour effectuer une recherche
Ajoutez/Modifiez les valeurs suivantes:

[...]			
	memory_limit = 512M		
	upload_max_filesize = 15G		
	max_execution_time = 360		
 	post_max_size = 200M		
 	output_buffering = Off	
	date.timezone = Europe/Paris
[...]
cltr+o ctrl+x

sql

préparer sql

Admin SQL en mousse, prêt ?

# apt-get install mariadb-server apt-transport-https -y
# wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
# echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/ondrej.list
# apt update && apt upgrade -y		
# mysql_secure_installation

Répondez aux questions comme bon vous semble.
Puis rendez-vous dans le fichier my.cnf.

#nano /etc/mysql/my.cnf

Ajouter/Modifier les valeurs suivantes :

[...]

[server]
skip-name-resolve
innodb_buffer_pool_size = 1G
innodb_io_capacity=4000
innodb_buffer_pool_instances = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 32M
innodb_max_dirty_pages_pct = 90
query_cache_type = 1
query_cache_limit = 2M
query_cache_min_res_unit = 2k
query_cache_size = 64M
tmp_table_size= 64M
max_heap_table_size= 64M
slow-query-log = 1
slow-query-log-file = /var/log/mysql/slow.log
long_query_time = 1

[client-server]
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/

[client]
default-character-set = utf8mb4

[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
transaction_isolation = READ-COMMITTED
binlog_format = ROW
innodb_large_prefix=on
innodb_file_format=barracuda
innodb_file_per_table=1

[...]

ctrl+O ctrl+x
systemctl restart mysql

modification du format de la bdd

MySQL est utilisée comme base de données mais ne supporte pas les caractères codés sur 4 octets. Pour pouvoir manipuler les caractères sur 4 octets (comme les émoticônes) sans problème dans les noms de fichiers ou les commentaires par exemple, il est recommandé d’activer le support 4 octets dans MySQL, les manipulations décrites ci-dessous seront nécessaires. (Source ici)

# mysql -u root -p

On se connecte à la base SQL puis on effectue un show variables.
Si vous avez l’élément suivant tout est OK :

> show variables like 'innodb_file_format';
 +--------------------+-----------+
 | Variable_name      | Value     |
 +--------------------+-----------+
 | innodb_file_format | Barracuda |				
 +--------------------+-----------+

En revanche si vous avez l’élément suivant :

> show variables like 'innodb_file_format';

+--------------------+-----------+
| Variable_name      | Value     |
+--------------------+-----------+
| innodb_file_format | Antelope  |
+--------------------+-----------+

Effectuez la commande suivante :

> SET GLOBAL innodb_file_format=Barracuda;

Faite la vérification présentée ci-dessus, le résultat devrait être favorable.

Maintenant on va créer de la base de données.
RAPPEL : Les valeurs entre « [xx] » sont à modifier en enlevant les crochets

> CREATE USER '[userdb]'@'localhost' IDENTIFIED BY '[PASSWORD]';
> CREATE DATABASE IF NOT EXISTS [nextcloud] CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
> GRANT ALL PRIVILEGES on [nextcloud.*] to '[userdb]'@'localhost';
> FLUSH privileges;
Explications des commandes
create

La commande CREATE est ce qui permet, lorsqu’elle est suivi d’un argument du type USER/DATABASE, de créer un ou plusieurs éléments.

L’ensemble CREATE USER '[userdb]'@'localhost' IDENTIFIED BY '[PASSWORD]'; permet, dans l’ordre, de « créer l’utilisateur [nom_utilisateur_voulut] à l’emplacement [localhost]« . Tous les éléments entre crochets dans le terminal sont des éléments arbitraires que vous pouvez/devez définir à votre guise.

L’ensemble CREATE DATABASE IF NOT EXISTS [nextcloud]; permet, dans l’ordre, de « créer la base, si elle n’existe pas, [nom_de_la_base_voulut]« . Pour la partie CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; on maîtrise moins mais normalement c’est pour autoriser les caractères UTF8mb4… voilà.

grant all privileges

La commande GRANT ALL PRIVILEGES on [nextcloud.*] to '[userdb]'@'localhost'; permet de donner tous les droits sur la base [nextcloud] à l’utilisateur [userdb].

flush privileges

La commande FLUSH privileges; permet de re-charger les droits sur la base, c’est une sorte d’actualisation si je ne me trompe pas.


installation nextcloud

installation du package nextcloud

#cd [/CHEMIN/DU/SITE]
						
#wget https://download.nextcloud.com/server/installer/setup-nextcloud.php

Plus qu’à suivre l’assistant d’installation via un client web

=> http(s)://IP-OU-FQDN/setup-nextcloud.php

eviter le message d’erreur suivant

« Votre dossier de données et vos fichiers sont probablement accessibles depuis internet. Le fichier .htaccess ne fonctionne pas. Nous vous recommandons vivement de configurer votre serveur web de façon à ce que ce dossier de données ne soit plus accessible, ou de le déplacer hors de la racine du serveur web. »

Nous vous recommandons de ne pas mettre le dossier « data » dans le dossier racine de NextCloud

nota bene

Désormais on est sur de la lecture purement et simplement. Vous pouvez accéder à l’installation en renseignant l’adresse de votre serveur suivi de « setup-nextcloud.php » :

https://adresse_url.fr/setup-nextcloud.php ou https://127.0.0.1/setup-nextcloud.php.

On aime pas les utilisateurs assistés qui ne savent pas quoi faire dès qu’un message d’erreur indique « erreur de syntaxe » ou « commande non reconnue », du coup on ne va pas vous mettre les captures d’écran de l’assistant d’installation en vous indiquant de cliquer sur « suivant ».


sécuriser

configuration minimale

# apt-get install ufw -y
# ufw allow 80
# ufw allow 443
# ufw allow 22
# ufw enable
# nano /etc/apache2/conf-available/security.conf

Fichier de conf security.conf. Ajoutez/Modifez les lignes suivantes.

[...]			
ServerSignature Off 			
#ServerSignature On					
[...]

(ctrl+o + ctrl+x)

#systemctl restart apache2
Explications des commandes
ufw

La commande ufw est la façon simplifier de gérer NetFilter. NetFilter est le pare-feu Linux généralement géré via son « interface graphique » nommée iptable.

Ici, on autorise l’accès aux ports

  • 80 (HTTP)
  • 443 (HTTPS)
  • 22 (SSH)

puis on active les règles avec l’argument enable.


vue d’ensemble

résolution des warning’s

Les commandes citées ci-dessous vous permettront de résoudre les messages suivants présents dans la vue d’ensemble.

AUcun cache mémoire configuré

Source : https://linuxfr.org/wiki/tuto-howto-nextcloud-activer-systeme-de-cache-memcache-avec-redis

 #apt install -y redis-server php-redis -y
 #nano /var/www/[dossier nextcloud]/config/config.php

Fichier de configuration « config.php »
Ajoutez les lignes suivantes avant « ); »

 'memcache.local' => '\OC\Memcache\Redis', /* contient les scripts php précompilés */
 'filelocking.enabled' => 'true',
 'memcache.distributed' => '\OC\Memcache\Redis',
 'memcache.locking' => '\OC\Memcache\Redis',
'redis' =>
array (	
  'host' => 'localhost', 
  'port' => 6379,		
  'timeout' => 0,			
  'dbindex' => 0,						
),

/.well-know/[cardav/caldav]

 #nano /etc/apache2/conf-available/nom_du_virtualhost-ssl.conf

Fichier de configuration « xxx-ssl.conf »
Ajoutez les lignes suivantes avant

 [...]
 Redirect 301 /.well-known/carddav https://[IP_OU_FQDN]/remote.php/dav
 Redirect 301 /.well-known/caldav https://[IP_ou_FQDN]/remote.php/dav					
 [...]
Explications des commandes
xxxx-ssl.conf

L’ajout des lignes Redirect 301 /.well-known/carddav https://[IP_OU_FQDN]/remote.php/dav et Redirect 301 /.well-known/caldav https://[IP_OU_FQDN]/remote.php/dav doivent être ajoutées dans la configuration du VirtualHost *443. Si vous avez utiliser certbot, cette configuration est présente dans le fichier xxx-ssl.conf.
Si vous avez utiliser l’auto-signature du certificat, la modification doit s’effectuer dans le fichier xxxx.conf.


Fun fac occ

#apt install sudo
#cd /var/www/repertoire_nextcloud
#sudo -u www-data php occ db:add-missing-indices
#systemctl restart apache2
Explications des commandes
occ

Il arrive que NextCloud, nous indique un message de type « warning » dans la vue d’ensemble concernant add-missing-indices ou autre message du même type. Dans ce cas, il est nécessaire de se situer dans le repertoire de nextcloud et d’exécuter la commande indiquée ci-dessous avec l’argument correspondant.


8 Comments

  1. unknow
    unknow 16/12/2022

    I’m no longer certain where you’re getting your info, but good topic.
    I must spend some time finding out much more or working out more.
    Thank you for magnificent info I was searching for this info
    for my mission.

    • Editor
      Editor 20/12/2022

      Hi!

      I’m relying on the nextcloud documentation and the tests I’ve done! 🙂

  2. unknow
    unknow 26/12/2022

    Excellent post. I used to be checking constantly
    this blog and I’m inspired! Very useful information specifically the closing phase
    🙂 I maintain such information a lot. I used to be seeking this
    certain info for a very lengthy time. Thank you and
    best of luck.

  3. vitaminler
    vitaminler 06/01/2023

    Hi there, I enjoy reading through your article.
    I wanted to write a little comment to support you.

    • NihyLix
      NihyLix 06/07/2023

      Thank you for your support ! 🙂

  4. unknow
    unknow 19/02/2023

    Hurrah! In the end I got a website from where I be able to really take useful facts concerning my
    study and knowledge.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *