5 votes

La barre oblique de fin provoque 404, puis-je corriger cela en utilisant htaccess ?

Les adresses URL incriminées sont les suivantes

La règle .htaccess que j'ai établie pour ces types d'URL ressemble à ceci :

RewriteRule ^face/(.*)$ face.php?term=$1

Que puis-je faire pour que ces deux URL renvoient à la même page ?

8voto

Nanne Points 35880

Vous pouvez utiliser ceci :

 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.+)/$ /$1 [L,R=301]

La première ligne dit : "s'il ne s'agit pas d'un répertoire" (parce qu'alors une barre oblique aurait un sens). La deuxième ligne dit : rediriger tout ce qui se trouve au début vers la barre oblique et à la fin vers tout ce qui s'y trouvait, sans la barre oblique.

Mettez votre propre RewriteRule (en dessous de celui-ci, pas au-dessus), de sorte que votre redirection normale fonctionne toujours après la suppression de la barre oblique.

(celle-ci fonctionnera évidemment pour les /body/ également, et pas seulement pour /face/ .

0voto

u01jmg3 Points 421

J'utilise la règle suivante, légèrement modifiée pour conserver la structure des sous-dossiers

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X