Comment configurer correctement les autorisations de fichiers dans WordPress

Publié: 2022-09-13

Si vous avez déjà géré un site WordPress, vous avez peut-être rencontré un problème où les plugins ou les thèmes ne pouvaient pas être installés, les images ne pouvaient pas être téléchargées dans la médiathèque, ou les fichiers que vous pensiez être sur le site n'étaient tout simplement pas ne s'affiche pas correctement.

Au cœur de tous ces problèmes se trouve le concept d'autorisations de fichiers, mais si vous n'avez jamais géré de serveur Web, vous ne savez peut-être pas exactement quelles sont les autorisations de fichiers, comment elles fonctionnent ou comment elles sont mal configurées en premier lieu.

Dans cet article, nous examinerons tout ce que vous devez savoir sur les autorisations de fichiers et leur fonctionnement dans WordPress.

Nous examinerons certaines des instances spécifiques où vous êtes le plus susceptible de voir des erreurs d'autorisation de fichier et étudierons comment vous pouvez diagnostiquer ces erreurs et les déboguer.

Que sont les autorisations de fichiers ?

Depuis le premier système informatique multi-utilisateurs, des autorisations de fichiers ont été nécessaires pour décider quels utilisateurs ont accès à quelles parties du système de fichiers.

Par exemple, chaque utilisateur dispose généralement d'un dossier "home", auquel il peut accéder, mais auquel les autres utilisateurs du système ne peuvent pas accéder.

Ce qui permet cela, c'est un ensemble d'autorisations de fichiers qui se répartissent en 3 catégories :

  1. Quelles sont les autorisations dont dispose le propriétaire.
  2. Quelles autorisations le groupe de fichiers a.
  3. Quelles autorisations chacun a.

Ces autorisations sont généralement exprimées de deux manières : sous forme de nombre ou de chaîne de caractères. Les autorisations de fichier que chacun de ces nombres et caractères représentent sont les mêmes dans les deux cas.

Un exemple d'autorisations de fichiers, tiré de WordPress.org

La façon dont ces autorisations sont définies détermine qui peut accéder à un fichier donné à un moment donné.

Comment les autorisations de fichiers sont-elles utilisées dans WordPress ?

Dans la plupart des cas, le serveur qui exécute un site WordPress s'exécute en tant qu'utilisateur particulier.

Comme tout utilisateur du système, les fichiers appartenant à l'utilisateur du serveur Web ont tendance à être accessibles à cet utilisateur et donc accessibles à l'installation WordPress que l'utilisateur exécute.

Ceci est important car pour que WordPress exécute des mises à jour, permette aux utilisateurs de télécharger des médias, d'installer des plugins et des thèmes, et la plupart de tout ce que WordPress fait pour fonctionner, il a besoin d'autorisations pour accéder aux différents répertoires à l'intérieur de l'installation de WordPress.

Si l'utilisateur système sous lequel WordPress s'exécute n'a pas accès à l'écriture dans le répertoire de téléchargements, par exemple, toute personne tentant de télécharger des médias dans la zone d'administration de WordPress verra un message d'erreur et ne pourra rien ajouter à la médiathèque. .

D'autre part, la configuration d'autorisations trop ouvertes signifie que n'importe qui peut modifier des fichiers à l'intérieur de votre installation WordPress, ce qui constitue également un risque pour la sécurité.

C'est pourquoi il est très important de définir correctement les autorisations de fichiers. Si vous utilisez un hôte géré, ceux-ci seront probablement déjà configurés pour vous.

Attention au 777

Si vous rencontrez une erreur d'autorisations de fichiers et que vous commencez à chercher des solutions en ligne, de nombreux didacticiels vous recommanderont de définir les autorisations de fichiers d'un ou plusieurs répertoires de votre installation WordPress sur "777 autorisations".

Il s'agit de l'ensemble d'autorisations le plus ouvert possible et signifie que n'importe qui peut lire ou écrire n'importe quoi dans ce répertoire.

L'idée derrière la définition des autorisations d'un répertoire problématique sur 777 est qu'une fois que vous avez fait cela, si votre problème est résolu, les autorisations de fichiers étaient le problème et vous pouvez commencer à examiner plus en profondeur les répertoires qui pourraient avoir des autorisations incorrectes.

Bien que cela convienne pour un débogage temporaire, laisser des répertoires avec ce niveau d'autorisations à long terme constitue un risque pour la sécurité. Si vous laissez l'un de vos répertoires défini sur ces autorisations complètement ouvertes, toute personne familiarisée avec le fonctionnement de WordPress et la structure des répertoires pourrait potentiellement accéder à vos fichiers.

Définir vos autorisations sur 777 et les laisser là, c'est comme se faire enfermer hors de votre appartement, casser le verrou de la porte et le laisser comme ça.

Bien que cela résolve votre problème à ce moment-là, cela vous laisse également ouvert à d'autres vulnérabilités de sécurité. Laisser ces autorisations de fichiers ouvertes pour plus qu'un bref débogage signifie que votre site WordPress, et votre serveur Web en général, est plus vulnérable aux plugins piratés et exploités ainsi qu'aux attaques automatisées qui sont exécutées sur de larges pans du Web.

Erreurs courantes dues aux autorisations de fichiers

Maintenant que nous savons un peu comment les autorisations de fichiers sont utilisées et comment elles fonctionnent spécifiquement dans WordPress, examinons certaines des erreurs que vous pourriez voir et qui sont dues à une configuration incorrecte des autorisations de fichiers.

Les thèmes, les plugins ou le noyau WordPress ne parviennent pas à installer/mettre à jour

Parfois, lorsque vous exécutez des mises à jour ou installez de nouveaux thèmes ou plugins, vous rencontrez une erreur où le plugin n'a pas pu être installé ou la mise à jour n'a pas pu être terminée.

Dans de nombreux cas, il s'agit d'un problème d'autorisations de fichiers et plus précisément d'une incompatibilité entre l'utilisateur du serveur Web qui exécute WordPress et l'utilisateur du serveur Web qui a accès au répertoire wp-content et en est propriétaire. Cela se produit souvent lorsque vous mettez à jour des fichiers dans le répertoire wp-content via FTP.

Dans ce cas, la propriété des répertoires que vous avez téléchargés via FTP est définie sur l'utilisateur FTP, tandis que l'utilisateur du serveur Web qui exécute WordPress est différent. Lorsque WordPress essaie d'installer un nouveau thème ou plugin, le serveur Web refuse cette tentative car WordPress n'est pas propriétaire du dossier.

Cela signifie que WordPress ne dispose pas des autorisations appropriées pour insérer ou modifier des fichiers dans le dossier wp-content, c'est pourquoi l'installation ou la mise à jour échoue.

Les téléchargements de médias échouent

Les téléchargements de médias qui échouent systématiquement mais ne déclenchent pas les messages d'erreur indiquant qu'ils sont trop volumineux ou d'un format incorrect peuvent signifier que vous avez également une erreur d'autorisation de fichier.

Si l'utilisateur du serveur Web lié à WordPress n'a pas l'autorisation d'accéder au répertoire wp-content ou au répertoire de uploads en particulier, les fichiers multimédias téléchargés ne pourront pas être transférés vers le bon répertoire et le téléchargement sera signalé comme manqué.

Les fichiers multimédias existent sur le serveur, mais 404 lorsqu'ils sont accessibles via le navigateur

Surtout après avoir restauré un site WordPress à partir d'une sauvegarde ou l'avoir migré entre des hôtes, vous pouvez constater que, même si les fichiers multimédias sont correctement téléchargés sur votre site et présents dans votre répertoire wp-content/uploads , ils génèrent toujours une erreur 404 lorsqu'ils 'essayez d'être accessible dans le navigateur.

Lorsque cela se produit, cela signifie généralement que l'utilisateur du système d'exploitation qui exécute le serveur Web n'a pas l'autorisation d'accéder aux images sur le serveur et ne peut donc pas les fournir au navigateur du visiteur.

Tout comme les problèmes et les solutions ci-dessus, vous devez vérifier chaque répertoire, en commençant par wp-content en passant par les uploads et chacun des répertoires mensuels ainsi que les images elles-mêmes, et assurez-vous que l'utilisateur du serveur Web dispose des autorisations de lecture sur tous ces dossiers. et des fichiers afin que les médias puissent être correctement affichés aux visiteurs dans leur navigateur.

Comment corriger les erreurs courantes d'autorisation de fichier

Le moyen le plus simple de corriger les erreurs courantes d'autorisation de fichier est de s'assurer que les autorisations de fichier sont définies comme prévu par WordPress.

Tout d'abord, vérifiez que le même utilisateur Web qui exécute WordPress est propriétaire du répertoire racine où WordPress est exécuté (il s'agit du répertoire dans lequel se trouve votre fichier wp-config.php).

Après cela, assurez-vous que tous les fichiers WordPress de ce répertoire, ainsi que le répertoire wp-content et tous les répertoires situés en dessous appartiennent également au même utilisateur.

Si vous utilisez un hébergeur qui utilise cPanel, vous pouvez modifier ces autorisations directement dans cPanel. Cependant, si vous avez un accès SSH à votre serveur et que vous exécutez un serveur basé sur Linux (ce que sont la plupart des serveurs Web), vous devrez peut-être suivre une méthode légèrement différente.

Autres erreurs potentielles d'autorisation de fichier

En dehors du cœur de WordPress et des fonctionnalités de thème et de plug-in de base, il existe quelques autres endroits où vous pouvez également rencontrer des erreurs liées aux autorisations de fichiers.

À savoir, certains plugins utilisent le système de fichiers de votre site WordPress pour faire leur travail et s'ils ne peuvent pas faire le travail dont ils ont besoin dans la structure de fichiers, vous pourriez voir apparaître des erreurs étranges.

Il s'agit souvent de plugins de sauvegarde (qui stockent parfois les sauvegardes dans le répertoire wp-content ) et de plugins de mise en cache (qui génèrent et stockent parfois des caches statiques dans le répertoire wp-content ).

Si vous commencez à voir des erreurs avec l'un de ces types de plugins, le correctif est le même que celui identifié ci-dessus. Vous devez vous assurer que l'utilisateur du serveur Web qui exécute WordPress est le propriétaire et dispose des autorisations pour votre répertoire wp-content afin que les fichiers que vos plugins installés doivent stocker puissent y être placés.

Quelles sont les autorisations de fichiers correctes de WordPress

Même si chaque installation peut être légèrement différente, il existe des directives générales sur les autorisations de fichiers pour différents types de fichiers et de dossiers dans WordPress.

En général, selon les directives de WordPress, "Il est préférable de verrouiller autant que possible les autorisations de vos fichiers et d'assouplir ces restrictions lorsque vous devez autoriser l'accès en écriture, ou de créer des dossiers spécifiques avec moins de restrictions dans le but de faire des choses comme télécharger des fichiers.

Dans cet esprit, certaines zones du site nécessitent la configuration de diverses autorisations. La plupart des fichiers de la racine WordPress et plus profondément doivent appartenir à votre compte d'utilisateur et être accessibles en écriture à partir de ce compte, cependant, il y a quelques autres endroits qui doivent être accessibles en écriture par le serveur Web afin que WordPress puisse apporter des modifications à ces fichiers.

Dans wp-content , les themes , les plugins et les répertoires de uploads doivent être accessibles en écriture par le serveur Web, en particulier si vous souhaitez exécuter des mises à jour automatiques ou utiliser l'éditeur de thème depuis WordPress.

Si vous ne souhaitez pas utiliser ces fonctionnalités, vous pouvez rendre les choses encore plus sûres en rendant ces répertoires non inscriptibles par le serveur Web. Cela permettra à votre site de continuer à fonctionner normalement sans ouvrir la possibilité que des modifications malveillantes soient apportées à l'un de ces fichiers.

Emballer

Bien qu'il ne s'agisse pas d'un problème auquel la plupart des propriétaires de sites WordPress doivent faire face, en particulier depuis l'essor de l'hébergement géré, les autorisations de fichiers peuvent toujours produire des erreurs difficiles à déboguer.

Cependant, si vous connaissez les signes et les types d'erreurs courants qui ont pour cause sous-jacente une configuration incorrecte des autorisations de fichiers, vous pouvez accélérer le processus de remise sur les rails de votre site.

En connaissant un peu les autorisations de fichiers et le fonctionnement du système d'exploitation sous votre site WordPress, vous serez en mesure de résoudre plus rapidement toute erreur d'autorisation potentielle et d'aider les autres à faire de même !

Choix de l'éditeur