2016-04-01 3 views
1

J'essaie de créer plusieurs règles de réécriture, de sorte que quelques pages seront redirigées vers certaines pages, et le reste sera redirigé vers la page de démarrage. Cependant, toutes mes pages continuent d'être redirigées vers la page d'accueil.Règles de réécriture multiples pour différentes pages

C'est le code que je utilise:

RewriteCond %{HTTP_HOST} ^site\.com/category\.php?s=1$ [NC] 
RewriteRule (.*) http://site.co.uk/category/? [R=301,L] 


RewriteCond %{HTTP_HOST} ^site\.com$ [NC,OR] 
RewriteCond %{HTTP_HOST} ^www\.site\.com$ [NC] 
RewriteRule (.*) http://site.co.uk/? [R=301,L] 

Edit:

Ceci est le .htaccess complet:

Order deny,allow 
DirectoryIndex default.php index.php 
SetEnv DEFAULT_PHP_VERSION 5 


Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/

RewriteCond %{THE_REQUEST} /flavours\.php?\s=1 [NC] 
RewriteRule^http://site.co.uk/flavours/? [R=301,L] 

RewriteCond %{HTTP_HOST} ^(www\.)?site\.com$ [NC] 
RewriteRule^http://site.co.uk/? [R=301,L] 

Voici le lien que je suis en train d'accéder à: www .site.com/flavours.php? s = 1

Répondre

1

HTTP_HOST ne peut pas correspondre à REQUES_URI.

Vous pouvez utiliser:

# specific redirects 
Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/

RewriteCond %{THE_REQUEST} /flavours\.php\?s=1 [NC] 
RewriteRule^http://site.co.uk/flavours/? [R=301,L] 

RewriteCond %{HTTP_HOST} ^(www\.)?flaverco\.com$ [NC] 
RewriteRule^http://site.co.uk/? [R=301,L] 

Assurez-vous d'effacer le cache de votre navigateur avant de tester cela.

+0

Malheureusement, il continue toujours à m'envoyer à la page d'accueil. – Ellinor

+0

Quelle est l'URL exacte que vous utilisez pour tester? Aussi pouvez-vous montrer full .htaccess en question – anubhava