Comment comprendre pourquoi vos permaliens ne fonctionnent pas dans WordPress
Publié: 2021-12-27De nombreuses tâches du site se concentrent sur l'optimisation des moteurs de recherche (SEO), car cela peut augmenter votre visibilité et votre classement dans les recherches. Une partie de votre stratégie de référencement doit être basée sur vos structures d'URL, bien que si vos permaliens ne fonctionnent pas dans WordPress, vous aurez du mal à réduire vos chiffres de trafic.
Il est simple de savoir quand vous avez un permalien cassé, mais ce qui n'est pas si facile à comprendre, c'est comment le réparer. La plupart du temps, vous devrez sauter dans les fichiers de configuration de votre serveur et apporter quelques modifications. Cependant, une réinitialisation rapide depuis WordPress pourrait suffire.
Au cours des prochaines sections, nous vous montrerons quoi faire lorsque vos permaliens ne fonctionnent pas dans WordPress. Tout d'abord, nous allons parler davantage des permaliens cassés et de leur apparence.
À quoi ressemble un permalien cassé dans WordPress
Quel que soit le serveur que vous utilisez ou sa configuration, les permaliens cassés se ressemblent tous. Dans la plupart des cas, vous verrez que votre page d'accueil est parfaite, tandis que d'autres pages affichent une erreur 404 :
Pour certains cas spécifiques - c'est-à-dire des URL légitimes qui n'existent pas autrement sur le site - vous pouvez rediriger les erreurs 404 vers votre page d'accueil. Cependant, ce n'est pas une solution permanente dans de nombreux cas, car vous aurez souvent un problème sous-jacent qui n'est pas détecté.
De plus, si vos permaliens ne fonctionnent pas dans WordPress, vous n'en aurez aucune idée à moins de parcourir votre site. Il se peut que votre première idée d'un problème soit lorsque les utilisateurs vous envoient une notification. Ce n'est pas bon pour l'expérience utilisateur (UX), ni pour votre réputation.
Pourquoi vos permaliens ne fonctionnent pas dans WordPress
Les slugs et les permaliens dans WordPress sont davantage un aspect « défini et oublié » de votre site. Bien que vous puissiez modifier les slugs poste par poste, vous définissez des structures globales de permaliens après le processus d'installation initial de WordPress. La pratique typique recommandée est de les laisser après cela, car cela peut affecter votre référencement.
En tant que tels, les permaliens cassés dans WordPress sont plus difficiles à réparer, car vous n'aurez pas été directement impliqué dans leur rupture. Au lieu de cela, il y a quelques autres pistes à explorer :
- Si vous installez un nouveau plugin, ou modifiez les paramètres de l'ancien, vous pourriez apporter une modification indirecte à vos permaliens. Cela est particulièrement vrai pour les plugins qui se connectent aux fichiers de configuration de votre serveur.
- Bien que ce soit une petite chance, certaines mises à jour de base, de thème et de plug-in casseront vos permaliens. C'est l'une des raisons pour lesquelles vous voudrez avoir une sauvegarde propre et à jour en place (dont plus tard).
- En parlant de cela, si vous devez utiliser votre sauvegarde pour restaurer votre site, cela peut également casser vos structures de permaliens. Cela s'applique également à la migration de votre site.
Cependant, il existe une cause plus courante pour que vos permaliens ne fonctionnent pas dans WordPress : une modification manuelle des fichiers de configuration de votre serveur. Si vous décidez de bricoler avec ces fichiers, cela cause les mêmes dommages qu'un plugin en conflit.
Quelle que soit la raison de l'erreur, vous voudrez vous mettre au travail pour la réparer. Maintenant que vous connaissez les causes, vous pouvez commencer à creuser et découvrir où se situe le problème.
Ce dont vous aurez besoin pour réparer vos permaliens WordPress cassés
Si vous ne l'avez pas déjà fait, vous devrez accéder aux fichiers principaux de votre serveur. Pour cette raison, il est bon d'avoir tout ce dont vous avez besoin, prêt à faire du rock and roll. Voici la liste de contrôle des éléments que vous voudrez préparer :
- Accès administratif à votre serveur, afin de travailler avec ses fichiers. Dans la plupart des cas, cela ne nécessitera pas votre contribution, surtout si vous êtes le propriétaire du site.
- Vos informations d'identification de serveur, en particulier les informations de connexion. Vous les trouverez dans votre panneau de contrôle d'hébergement ou dans un e-mail de votre fournisseur. Si vous ne trouvez pas les informations d'identification, votre hébergeur pourra vous dire où elles se trouvent.
- Un client SFTP (Secure File Transfer Protocol), tel que Cyberduck, FileZilla ou Transmit. Chacun d'entre eux est plus que capable de parcourir simplement les fichiers sur votre serveur.
- Les compétences nécessaires pour utiliser SFTP sans causer de problème. Il va presque sans dire que vous voudrez savoir comment utiliser SFTP tout au long de ce didacticiel.
- Une sauvegarde propre, actuelle et complète de votre site Web et éventuellement de votre serveur. Si vous devez restaurer en raison d'erreurs persistantes (ou introduites), votre sauvegarde deviendra le fichier le plus précieux que vous possédez.
Bien qu'il existe des outils facultatifs, tels qu'un éditeur de texte, ils ne sont pas nécessaires. La liste ci-dessus sera tout ce dont vous avez besoin pour réparer vos permaliens qui ne fonctionnent pas dans WordPress.
Comment réparer les permaliens qui ne fonctionnent pas dans WordPress
Une fois que vous disposez de tous les outils, compétences et services dont vous avez besoin, vous pouvez vous mettre au travail. Au cours des prochaines minutes, nous vous montrerons comment réparer les permaliens qui ne fonctionnent pas dans WordPress de la manière suivante :
- Nous allons réinitialiser les permaliens à partir du tableau de bord WordPress, et cela prend quelques secondes.
- Vous vérifierez les incompatibilités avec vos plugins qui pourraient affecter vos permaliens.
- Pour les serveurs Apache, nous vous montrerons où chercher pour résoudre votre problème de permaliens.
- Nous vous montrerons également la même chose pour les serveurs Nginx, car ils sont tout aussi (sinon plus) populaires.
À la fin de l'article, vous aurez les connaissances nécessaires pour vous assurer de pouvoir résoudre tout problème lié aux permaliens à l'avenir. Il y a beaucoup à faire, nous allons donc commencer dans WordPress lui-même.
1. Réinitialisez vos permaliens dans WordPress
L'espoir est qu'une réinitialisation rapide de vos permaliens dans le tableau de bord WordPress résoudra tous les problèmes que vous rencontrez. Cela devrait prendre quelques secondes, et parce que c'est un moyen simple de résoudre votre problème de permaliens, nous vous recommandons de le faire en premier.
Pour commencer, rendez-vous sur la page Paramètres > Permaliens dans WordPress :
Pour la plupart des installations WordPress modernes, vous aurez la structure de permalien du nom de publication . Cependant, pour l'instant, nous devons le changer temporairement. Pour ce faire, cochez n'importe quel autre bouton radio. Si vous voulez être extrêmement prudent quant à la préservation de la structure de votre URL, vous pouvez sélectionner Structure personnalisée et utiliser la balise /%postname%/
:
Ensuite, enregistrez vos modifications, sélectionnez à nouveau la structure d'origine (dans ce cas, Post name ), puis enregistrez à nouveau vos modifications. Cela devrait déclencher la réinitialisation de vos permaliens, alors vérifiez votre site et si vous avez résolu le problème.
2. Vérifiez les conflits de plugins et les incompatibilités
La méthode suivante pour réparer vos permaliens qui ne fonctionnent pas dans WordPress est une approche plus simple d'une étape populaire pour résoudre de nombreux problèmes WordPress. Vos plugins (bien sûr) affectent une myriade de zones de votre site, à tel point qu'un plugin malveillant peut causer des problèmes avec vos permaliens.
L'approche standard à ce stade serait de se connecter à votre serveur via SFTP, mais dans ce cas, nous n'en avons pas besoin. Au lieu de cela, dirigez-vous vers la page Plugins > Installed Plugins dans WordPress :
Sur cet écran, cochez chaque case pour chaque plug-in – vous pouvez utiliser la case à cocher globale en haut pour gagner du temps – et choisissez Désactiver dans le menu déroulant Actions groupées :
Cela désactivera tous les plugins, mais résoudra également, espérons-le, le problème des permaliens qui affecte votre site.
Ensuite, activez chaque plugin à tour de rôle jusqu'à ce que vous constatiez que vos permaliens ne fonctionnent plus. Une fois que vous avez trouvé le plugin, désactivez-le à nouveau et rétablissez votre site tel qu'il était, sans le plugin incriminé.
À ce stade, vous avez quelques options :
- Supprimez complètement le plugin si vous n'en avez plus besoin.
- Trouvez une alternative, en commençant par le répertoire des plugins WordPress.
- Contactez le développeur pour l'informer et demander un correctif.
Dans tous les cas, vous voudrez garder le plugin désactivé jusqu'à ce que vous ayez une résolution, car vous ne voudrez pas que vos permaliens restent cassés.
3. Configurez votre serveur Apache
Bien qu'ils ne soient plus aussi populaires qu'auparavant, les serveurs Apache restent un moyen solide d'héberger votre site Web. De plus, ils sont simples à gérer pour l'utilisateur moyen (ce qui a des inconvénients, mais c'est pour un autre article).
En tant que tel, examinons quelques tâches que vous pouvez effectuer pour que vos permaliens WordPress fonctionnent à nouveau.
Travaillez avec votre fichier .htaccess pour que vos permaliens fonctionnent à nouveau
Tout comme basculer différentes structures de permaliens dans WordPress, vous pouvez également réinitialiser votre fichier .htaccess en quelque sorte. Pour ceux qui ne le savent pas, il s'agit d'un fichier de configuration qui aide votre serveur à gérer son contenu. Vous pouvez le modifier avec de nouvelles instructions, mais dans ce cas, nous voulons le désactiver (ou du moins, ne pas laisser le serveur l'utiliser temporairement).
Vous pouvez modifier le fichier .htaccess avec de nouvelles instructions, mais dans ce cas, nous voulons le désactiver (ou du moins, ne pas laisser le serveur l'utiliser temporairement).
Pour cela, vous devrez vous connecter à votre serveur en utilisant les informations d'identification que vous avez obtenues précédemment et le client SFTP que vous avez choisi. Une fois que vous y êtes, vous voudrez naviguer vers le bon site. Si c'est le seul sur votre serveur, cela ne devrait pas être trop difficile. Cependant, pour plus d'un site, recherchez quelque chose avec un nom spécifique.
Si vous ne voyez pas le nom de votre site, il se peut qu'il s'agisse de l'installation principale de votre serveur. Dans ce cas, recherchez www , root , public_html ou quelque chose de similaire. Les fichiers de votre site seront là-dedans.
Une fois que vous êtes au bon endroit, recherchez votre fichier .htaccess . Il doit se trouver dans le répertoire le plus haut :
Bien que vous puissiez sauvegarder ce fichier, il restera sur votre serveur, mais sous un nom différent. Pour ce faire, cliquez avec le bouton droit sur le fichier et, dans le menu contextuel, recherchez l'option Renommer (ou similaire) :
Cela amènera WordPress à ignorer le fichier .htaccess , comme s'il n'existait pas. À partir de là, vous souhaiterez réinitialiser vos permaliens conformément à la première étape de notre guide. Cela créera un tout nouveau fichier .htaccess sur votre serveur, et à quel point, vous pourrez tester si vos permaliens ne fonctionnent pas.
S'ils fonctionnent, quelque chose dans votre fichier .htaccess sera la cause de votre erreur de permaliens. Vous voudrez peut-être effectuer un travail de copier-coller pour trouver les lignes à l'origine du problème, mais comme vous avez un tout nouveau fichier .htaccess prêt à l'emploi, il se peut que ce ne soit pas nécessaire.
Ajoutez la règle AllowOverride à votre configuration Apache Dossier
Pour ce prochain conseil, vous devrez vous trouver dans le dossier racine de votre serveur. Il s'agit du niveau le plus élevé auquel vous pouvez accéder, et sachez que certains hôtes pourraient ne pas vous permettre de le faire. En tant que tel, si vous utilisez un serveur partagé, cela ne sera pas une option pour vous. Cependant, ceux qui gèrent le serveur ou utilisent un réseau privé virtuel (VPN) peuvent effectuer les opérations suivantes.
Vous saurez si vous êtes au bon endroit car il y aura un dossier etc. Alors que certains serveurs auront un chemin et un fichier etc/httpd/httpd.conf
, les serveurs Linux peuvent utiliser etc/apache2/apache2.conf
:
Vous voudrez ajouter une règle au fichier apache2.conf qui vous permet de remplacer certains aspects du serveur sur une base par répertoire. Nous n'allons pas entrer dans les détails de celui-ci ici, car vous n'avez pas besoin d'en comprendre les subtilités. Cependant, vous voudrez vous assurer de sauvegarder avant d'essayer celui-ci.
De retour dans votre client SFTP, accédez au fichier apache2.conf et ouvrez-le dans votre éditeur de texte. À l'intérieur, recherchez la suite de code suivante :
<Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
Vous voudrez changer la ligne AllowOverride None
en AllowOverride All
. Une fois que vous avez enregistré vos modifications, vous voudrez vérifier si vos permaliens fonctionnent. Si ce n'est pas le cas, vous devrez peut-être redémarrer le serveur. Il s'agit d'une technique avancée qui utilise l'accès Secure Shell (SSH). Nous en parlons dans un autre article du blog.
Lorsque vous êtes sur votre serveur, entrez sudo systemctl restart apache2
pour le redémarrer. En raison de la complexité des différents hôtes, vous voudrez leur parler si vous rencontrez des problèmes. De nombreux hébergeurs ont une manière personnalisée d'accéder à votre serveur, et vous voudrez trouver l'approche la plus optimale.
4. Configurez votre serveur Nginx
Nginx est une voiture de course super lisse comparée au Hot Rod en tôle d'Apache. En tant que tel, il a beaucoup de fans et une grande part de marché par rapport à la concurrence.
L'inconvénient ici est que trouver les fichiers dont vous avez besoin est plus délicat que d'autres types de serveurs. C'est toujours possible, nous allons donc vous montrer comment réparer vos permaliens qui ne fonctionnent pas sur les serveurs Nginx.
Trouvez votre fichier de configuration Nginx
Tout d'abord, vous devez trouver le bon fichier de configuration. Vous devrez peut-être consulter votre hébergeur pour connaître l'emplacement exact sur votre serveur ici. Pour nous, le fichier se trouve dans le répertoire etc/nginx/site-enabled/
, mais le vôtre peut différer.
Une fois que vous êtes à l'intérieur, recherchez un fichier appelé default.conf , ou un nommé d'après votre site - encore une fois, consultez votre hébergeur si vous en avez besoin. Les fichiers de configuration Nginx utilisent des blocs de code pour définir différentes règles, et vous saurez si le fichier est correct car il y aura un bloc qui commence par server {
.
Lorsque vous trouvez ce bloc, vous pouvez le modifier selon que votre site se trouve à la racine ou dans un sous-répertoire.
Modifier votre fichier de configuration Nginx
Avec le fichier default.conf ouvert et votre curseur planant autour du bloc server
, recherchez un autre bloc en retrait, cette fois pour location /
. À l'intérieur, ajoutez ce qui suit :
try_files $uri $uri/ /index.php?$args;
Le bloc complet doit ressembler à ce qui suit :
location / try_files $uri $uri/ /index.php?$args;
Cela ne s'appliquera que si votre site se trouve dans le répertoire racine de votre serveur. Si votre site se trouve dans un sous-répertoire - peut-être s'agit-il d'un site parmi tant d'autres - vous souhaiterez pointer l'emplacement vers ce sous-répertoire :
location /subdirectort/ try_files $uri $uri/ /subdirectory/index.php?$args;
Lorsque vous enregistrez vos modifications, redémarrez votre serveur à l'aide sudo systemctl reload nginx
. Comme pour les instructions d'Apache, vous ne pourrez peut-être pas le faire, auquel cas parlez à votre hôte et demandez-lui de vous aider.
Emballer
Vos permaliens représentent le moyen lisible par l'homme d'accéder aux publications et aux pages de votre site Web. S'ils tournent mal, les retombées pourraient mettre votre site à genoux. Très souvent, le premier que vous saurez que vos permaliens ne fonctionnent pas dans WordPress est le nombre élevé d'erreurs 404 que vos utilisateurs recevront.
Pour résoudre ce problème, le meilleur des cas sera de réinitialiser vos permaliens dans WordPress. Cependant, dans de nombreux autres cas, vous devrez ouvrir votre serveur et supprimer (ou modifier autrement) des fichiers pour que les choses fonctionnent à nouveau. Ce poste devrait offrir les compétences et les flux de travail dont vous avez besoin pour redresser le navire et continuer à naviguer.
Est-ce que vos permaliens ne fonctionnent pas dans WordPress, quelque chose que vous avez déjà rencontré, ou quelque chose que vous rencontrez en ce moment ? Partagez vos situations et tout conseil correctif dans la section des commentaires ci-dessous !