J’ai besoin de 301 redirect ceci:
/blog/?=31
à
/blog/
et
/blog/?page_id=2
à
/blog/
J’ai essayé les choses évidentes:
Redirect 301 /blog/?p=31 /blog/ Redirect 301 /blog/?page_id=2 /blog/
Et évidemment cela n’a pas marché sinon je ne poserais pas cette question ici, alors ne dites pas l’évidence!
Redirect
directive de Redirect
est fournie par mod_alias
. Je ne suis pas sûr, mais je pense qu’il ne reçoit pas le paramètre de chaîne de requête. En utilisant mod_rewrite
cependant, les règles seraient:
RewriteEngine On RewriteCond %{QUERY_STRING} ^p=31|page_id=2$ RewriteRule ^/?blog/?$ /blog/? [R=301,L]
Afin de gérer les redirections impliquant Query Ssortingngs , vous devrez utiliser un mod_rewrite
RewriteCond %{QUERY_STRING}
dans votre fichier .htaccess
:
RewriteEngine on RewriteCond %{QUERY_STRING} !^$ RewriteRule ^blog http://example.com/blog? [NC,L,R=301]