Dans mon serveur j'ai gardé signup.php
et dans . Htaccess j'ai gardé cette chose -
RewriteRule ^/registration /? $ http://www.example.com/signup 1 $ [R]
Mais ceci ne redirige pas www.example.com/registration/
vers www.example.com/signup/
Cependant, j'ai essayé avec d'autres choses comme -
RewriteRule ^/registration /? $ Signup.php $ 1 [R]
et aussi -
RewriteCond% {REQUEST_URI} ^ registration/$ [NC] RewriteRule ^ (. *) http://example.com/signup [R = 301, L
Mais rien ne marche. Cela me montre un message d'erreur 404. J'utilise Ubuntu 14.04 sur un serveur Windows Azure exécutant Apache 2.2.22
Je vois des problèmes avec vos règles de réécriture.
RewriteEngine On
$1
étranger dans votre première règle. Avoir $1
devrait être une référence arrière à ce qui est entre parenthèses dans la première partie de la règle. Il n'y a pas de parenthèses, donc cette règle ne fonctionnera pas correctement.L
pour vous assurer qu'il s'agit de la dernière règle de réécriture déclenchée.R=301
afin qu'il ne fasse pas de redirection temporaire moins propice au référencement.]
de clôture.Je recommanderais d'abord d'essayer d'utiliser une directive de redirection simple pour quelque chose d'aussi simple:
redirect permanent /registration /signup
Si cela ne fonctionne pas, vous pouvez corriger votre règle de réécriture:
RewriteEngine On
RewriteRule ^registration/?$ /signup [L,R=301]