Redirection pour forcer le slash de fin des URLs

Dans cette doc :

Remarque SEO : Tant que vos URL canoniques sont correctement définies, Google indexera l'URL souhaitée même sans ces corrections.

Ajouter un slash de fin pour Apache

Si vous avez besoin de forcer le slash de fin de vos urls, vous pouvez utiliser le plugin suivant. Notez bien que tant que vos urls canoniques sont correctement réglées, Google indexera l’url désirée même sans cette modification. 

📥  Télechargement (.zip): WP Rocket | Forcer le slash de fin des URLs

Développeurs : Vous trouverez le code pour ce plugin sur GitHub.

Voici les règles ajoutées au fichier .htaccess par ce plugin :

# Force trailing slash
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1/ [L,R=301]

Supprimer le slash de fin pour Apache

Si vous avez besoin par contre de supprimer le slash de fin de vos urls, vous pouvez utiliser le plugin suivant :

📥  Télechargement (.zip): WP Rocket | Remove Trailing Slash from URLs
Développeurs : Vous trouverez le code pour ce plugin sur GitHub.

Voici les règles ajoutées au fichier .htaccess par ce plugin :

# Remove trailing slash
RewriteCond %{REQUEST_URI} !wp-admin
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{REQUEST_URI} (.*)/$
RewriteCond %{REQUEST_FILENAME}
!\.(gif|jpg|png|jpeg|css|xml|txt|js|php|scss|webp|mp3|avi|wav|mp4|mov|pdf)$ [NC]
RewriteRule ^(.*)/$ /$1 [R=301,L]' . PHP_EOL . PHP_EOL;

Les slash de fin sur les serveurs NGINX

La configuration de NGINX est plus compliquée car WP Rocket n'a pas accès à la configuration d'un serveur NGINX ; les serveurs NGINX n'utilisent pas de fichiers .htaccess, donc, ce type de serveur doit être configuré par un administrateur système.

Si vous avez accès à la configuration du serveur NGINX, vous pouvez utiliser les règles suivantes :

Ajouter le slash de fin sur NGINX :

# Force Trailing Slash (less REST API calls and files)

if ($request_uri !~ "^/wp-json") {
        rewrite ^([^.]*[^/])$ $1/ permanent;
}

Supprimer le slash de fin sur NGINX :

# Remove Trailing Slash (less REST API calls and files)

if ($request_uri !~ "^/wp-json") {
        rewrite ^/(.*)/$ /$1 permanent;
}
Cela a-t-il répondu à votre question ? Merci pour votre retour :) Une erreur est survenue lors de l’envoi de votre retour. Veuillez réessayer plus tard.