2010-03-03 4 views
0

J'essaye d'écrire une redirection 301 qui examinera à la fois le nom d'hôte et le paramètre de chaîne de requête. Donc, si l'URL est l'un des deux.301 Rediriger avec la chaîne de requête et le nom de domaine dans Apache

Alors je veux qu'il rediriger vers la page appropriée:

Sinon, si l'hôte n'est pas example.com comme

Je ne veux pas rediriger.

C'est ce que j'ai jusqu'à présent, mais cela ne semble pas fonctionner. Si quelqu'un pouvait fournir un peu d'aide sur celui-ci, ce serait très apprécié. J'ai déjà essayé de trouver une réponse similaire, mais je ne pouvais pas en trouver un.

RewriteEngine on 

RewriteCond %{HTTP_HOST} !^example.com$ [NC] 
RewriteCond %{query_string} p=11&b=3 
RewriteRule (.*) http://store.example.com/testpage.html [R=301,L] 

Répondre

1

Vous devez spécifier une requête vide pour votre URL de substitution:

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC] 
RewriteCond %{QUERY_STRING} p=11&b=3 
RewriteRule .* http://store.example.com/testpage.html? [R=301,L] 

Sinon, la requête demandée d'origine est automatiquement ajouté à la nouvelle URL.

Questions connexes