Parametrillisten urlien uudelleenohjaus

Uudelleenohjauksien tekeminen .htaccessissa on helppoa:

Redirect 301 /sivu/joka/ohjataan http://www.example.com/uusiosoite

Mutta entäs jos sivun osoite perustuu parametreihin, eli on esimerkiksi muotoa http://www.example.com/index.php?tag=foo? Silloin yksinkertainen edelleenohjaus ei toimi, sillä se perustuu vain tiedostojen nimiin.

Tarvitaan vähän monimutkaisempaa koodia:

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{QUERY_STRING} &?tag=foo
RewriteRule ^index\.php /foo? [R=301,L]

Tämä ohjaisi URLin http://www.example.com/index.php?tag=foo osoittamaan osoitteeseen http://www.example.com/foo. Ohjauksen voi tehdä toki toisellekin saitille.

Kysymysmerkki RewriteRulen uuden osoitteen perässä siivoaa parametrit pois osoitteesta, ilman siitä ohjattu osoite olisi http://www.example.com/foo?tag=foo (ja mitä muita parametrejä URLissa sitten alunperin oli mukana).

Kysy tai kommentoi

  • (ei näy muille)

XHTML: Voit käyttää näitä tägejä: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">