Supprimer en toute sécurité l'avertissement relatif au fichier .htaccess d'ownCloud Apache

Pour une installation ownCloud Classic hébergée sur Apache, corrigez l'avertissement « AllowOverride All » ou « .htaccess ne fonctionne pas » en configurant AllowOverride Allun bloc Apache correspondant <Directory>pour la racine web d'ownCloud dans l'hôte virtuel actif. Testez la configuration Apache, rechargez le service et actualisez la vue d'ensemble de l'administration d'ownCloud. N'autorisez pas les substitutions pour l'ensemble du système de fichiers.

Un éditeur d'hôte virtuel Apache affichant DocumentRoot et un bloc de répertoire ownCloud correspondant avec AllowOverride All
La modification doit être effectuée dans le bloc de répertoire Apache qui correspond au chemin du système de fichiers d'ownCloud.

Que signifie cet avertissement ?

La directive Apache AllowOverridedétermine les paramètres qu'un .htaccessfichier peut appliquer. Si les substitutions sont désactivées pour le répertoire ownCloud, Apache peut ignorer les règles du fichier fourni par ownCloud .htaccess. Cela peut affecter les règles de réécriture et de sécurité, raison pour laquelle le manuel d'ownCloud 10.16 inclut cette directive AllowOverride Alldans son exemple de configuration Apache.

Cette directive est valide uniquement dans une <Directory>section Apache. Elle ne doit pas être utilisée à l'intérieur d' un bloc .htaccess`<script>`, d'un <Location>bloc `<script>` ou d'un chemin d'URL. Apache recommande également aux administrateurs de ne pas autoriser les substitutions dans le bloc `<script>` global<Directory "/"> ; il est préférable de limiter la portée de ce paramètre au répertoire d'installation d'ownCloud. Consultez le guide d'installation d'ownCloud 10.16 pour Apache et AllowOverridela documentation de référence d'Apache .

Avant de modifier Apache

  • Vérifiez que le serveur web gérant ownCloud est Apache. Cette directive ne configure pas Nginx. Si Apache est placé derrière un proxy, identifiez l'hôte Apache qui sert les fichiers ownCloud.
  • Trouvez le chemin d'installation réel d'ownCloud, par exemple : /var/www/owncloud. Utilisez le chemin du système de fichiers servi par Apache, et non une URL de navigateur comme /owncloud.
  • Sauvegardez le fichier de configuration de l'hôte virtuel actif avant de le modifier. Sous Debian ou Ubuntu, le guide d'ownCloud utilise cet /etc/apache2/sites-available/owncloud.confemplacement ; d'autres distributions utilisent des emplacements différents.
  • Vérifiez que vos hôtes virtuels HTTP et HTTPS sont bien distincts. Configurez l'hôte virtuel qui traite les requêtes ownCloud ; si les deux hôtes virtuels servent directement les fichiers, configurez-les de manière cohérente.

Sous Debian ou Ubuntu, sudo apachectl -Scette commande liste les hôtes virtuels d'Apache et les fichiers de configuration qui les définissent. Cela permet d'éviter de modifier un site par défaut inutilisé pendant que l'hôte virtuel HTTPS continue de servir ownCloud.

Ajoutez la directive au bloc de répertoire correspondant

Ouvrez le fichier vhost actif et repérez la <Directory>section ownCloud existante. Ajoutez ou corrigez la ligne correspondante. Pour une installation standard /var/www/owncloud, la partie concernée peut ressembler à ceci :

DocumentRoot /var/www/owncloud

<Directory /var/www/owncloud/>
  Options +FollowSymLinks -Indexes
  AllowOverride All
  Require all granted
</Directory>

Intégrez ce paramètre à votre configuration existante au lieu de remplacer l'intégralité du vhost par cet exemple succinct. Si votre répertoire ownCloud se trouve ailleurs, remplacez les deux chemins par le chemin réel. Apache exige que le chemin du répertoire corresponde au chemin du système de fichiers utilisé pour les fichiers.

AllAutorise toute directive autorisée dans un .htaccessfichier à remplacer les paramètres du serveur dans ce répertoire. Il s'agit d'une autorisation générale ; limitez donc ce blocage à la racine web d'ownCloud. Ne modifiez pas cette autorisation AllowOverride Nonepour les sites `/etc/owncloud` /, ` /var/www/etc/owncloud` ou des sites non liés simplement pour faire disparaître l'avertissement.

Tester, recharger et vérifier

Sous Debian ou Ubuntu, ownCloud fournit la documentation mod_rewritenécessaire à la configuration d'Apache. Si ce dernier n'est pas activé, activez-le avec :

sudo a2enmod rewrite

Vérifiez ensuite la configuration avant de l'appliquer :

sudo apachectl -t

Ne poursuivez que si Apache signale une erreur Syntax OK. Rechargez Apache pour qu'il prenne en compte le vhost mis à jour :

sudo systemctl reload apache2

Sur les distributions utilisant ce httpdnom de service, utilisez plutôt les commandes `configuration-test` et `reload` de cette distribution. Retournez dans les paramètres d'ownCloud : ` Paramètres > Administration > Vue d'ensemble` et actualisez la page. L'avertissement devrait disparaître si Apache lit le vhost modifié et traite les données d'ownCloud .htaccess.

Un terminal Linux exécutant la commande a2enmod rewrite et montrant que le module de réécriture Apache est activé
Vérifiez que le module de réécriture d'Apache est activé lorsque le comportement de réécriture d'ownCloud fait partie de l'avertissement.
Un terminal Linux affichant apachectl -t renvoyant « Syntaxe OK » avant le rechargement d'Apache
Validez la configuration Apache avant de recharger le service.
Une page d'aperçu de l'administration de style ownCloud sans avertissement AllowOverride visible
Après le rechargement, retournez dans la vue d'ensemble de l'administration et vérifiez si l'avertissement concernant le fichier .htaccess a disparu.

Si l'avertissement persiste

  • Vérifiez l'hôte virtuel actif. Relancez la commande sudo apachectl -Set assurez-vous que le fichier modifié correspond bien au nom d'hôte et au port utilisés par ownCloud. Une AllowOverride Allligne située dans un bloc non correspondant est sans effet.
  • Vérifiez le chemin et la section exacts. Assurez-vous que le bloc correspond bien à une <Directory /path/to/owncloud/>section et que le chemin correspond au répertoire d'installation. Apache ignore AllowOverrideles fichiers `<section> ` .htaccesset ` <chemin> <Location>`.
  • Régénérez les règles ownCloud obsolètes uniquement en cas de besoin. Si le vhost est correct mais que les règles de réécriture d'ownCloud nécessitent une mise à jour, consultez la documentation occ maintenance:update:htaccess. Exécutez la commande depuis le répertoire ownCloud en tant qu'utilisateur du serveur web, par exemple : ` owncloud -m` sudo -u www-data php occ maintenance:update:htaccess. Cet utilisateur doit disposer des droits d'écriture sur le .htaccessfichier fourni pour cette mise à jour. Ne rendez pas le fichier accessible en écriture à tous ; corrigez son propriétaire et ses permissions conformément aux instructions de votre installation.
  • Consultez le journal d'erreurs d'Apache après une erreur 500. Bien qu'une vérification de syntaxe valide la configuration principale d'Apache, une directive .htaccesspeut échouer si son module est manquant ou si elle n'est pas autorisée. Utilisez le journal d'erreurs pour identifier le module ou la règle concernée.

La configuration d'URL sans `index.php` documentée par ownCloud requiert également un répertoire racine accessible en écrituremod_rewrite ; il s'agit d'une configuration de réécriture connexe, et non d'une raison d'étendre les règles de réécriture au-delà du répertoire d'ownCloud. Si votre installation utilise PHP-FPM, suivez les recommandations ownCloud actuelles pour cette installation plutôt que de modifier les gestionnaires PHP pour résoudre un avertissement de surcharge Apache. Si l'avertissement indique que le répertoire de données est potentiellement accessible publiquement, vérifiez qu'il se trouve bien en dehors du répertoire racine web ou qu'il est protégé par une règle Apache explicite ; la disparition de l' avertissement ne garantit pas à elle seule que les fichiers privés ne peuvent pas être demandés directement.mod_env.htaccess.htaccess

Pour connaître le comportement documenté et les limites de la plateforme, consultez les instructions d'ownCloud concernant les URL sans index.php et sa référence de commandes OCC .

Laisser un commentaire

Supprimer en toute sécurité l'avertissement relatif au fichier .htaccess d'ownCloud Apache

Supprimer en toute sécurité l'avertissement relatif au fichier .htaccess d'ownCloud Apache

Configurez AllowOverride All uniquement pour la racine web d'ownCloud, validez l'hôte virtuel Apache actif et rechargez en toute sécurité pour restaurer les règles .htaccess.

Configurez l'audit d'ownCloud Enterprise et vérifiez les journaux.

Activez l'application d'audit d'entreprise d'ownCloud, acheminez les événements admin_audit vers un fichier journal protégé et vérifiez que les actions réelles des utilisateurs sont bien enregistrées.

Connectez ownCloud Infinite Scale à Keycloak avec OIDC

Connectez ownCloud Infinite Scale à Keycloak avec OIDC

Alignez l'émetteur de domaine Keycloak, le client web et les revendications des utilisateurs pour permettre à ownCloud Infinite Scale de connecter les utilisateurs de manière fiable sur les clients web et mobiles.

Transférer ses fichiers ownCloud à un nouveau propriétaire sans perdre de parts

Transférez les fichiers dont vous êtes propriétaire et les partages sortants avec la commande occ d'ownCloud, comprenez ce qui reste et vérifiez l'accès avant de supprimer l'ancien compte.

Accélérez les requêtes ownCloud 10 en gérant les index en toute sécurité

Découvrez quand les index de la base de données ownCloud 10 nécessitent une attention particulière, comment appliquer en toute sécurité les mises à jour de schéma prises en charge et quand l'optimisation des requêtes ou une modification de la base de données constitue la meilleure solution.

Monter un partage SMB/CIFS dans ownCloud sans montage Linux

Connectez un partage réseau Windows ou Samba à ownCloud via un stockage externe, vérifiez les identifiants et résolvez les problèmes d'accès aux dossiers en toute sécurité.

Supprimer en toute sécurité les versions de fichiers ownCloud avec la commande occ

Supprimer en toute sécurité les versions de fichiers ownCloud avec la commande occ

Supprimez toutes les versions de fichiers ownCloud Server Classic stockées pour un compte ou pour tous les utilisateurs, et faites la distinction entre une purge complète et une expiration basée sur la rétention.

Connexion à ownCloud Mobile refusée ? Vérifiez l’URL et la connectivité.

Connexion à ownCloud Mobile refusée ? Vérifiez l’URL et la connectivité.

Pour identifier la cause d'un refus de connexion mobile ownCloud, vérifiez dans le bon ordre l'URL du serveur, le réseau téléphonique, le point de terminaison HTTPS et les journaux du serveur.

Exécutez des tâches en arrière-plan ownCloud de manière fiable grâce à un minuteur Systemd.

Remplacez les exécutions de tâches à la demande par une minuterie systemd qui exécute la commande système occ:cron prise en charge par ownCloud toutes les 15 minutes.

Rétablir la synchronisation WebDAV d'ownCloud en trouvant le chemin rompu

Suivez la requête WebDAV via Apache, Nginx ou un proxy inverse, puis vérifiez que la synchronisation ownCloud fonctionne avec un test PROPFIND authentifié.