動的URLを静的URLにリダイレクトする

 Web上に沢山載っていたのは、静的URLを動的URLにリダイレクトするというもの。

http://www.olddomain.com/optimus/prime.html

  ↓

http://www.newdomain.com/optimus.cgi?id=prime

 今回、sirmiles.comから一部コンテンツを移転するにあたり、逆パターンが突如必要になりました。

http://www.olddomain.com/optimus.cgi?id=prime

  ↓

http://www.newdomain.com/optimus/prime.html

 .htaccessを使って、次のように記述するとOK。

RewriteEngine on

RewriteCond %{QUERY_STRING} ^id=(.*)$
RewriteRule (.*)\.cgi$ http://www.newdomain.com/$1/%1.html? [R=301,L]

 RewriteCondでキャプチャしたグループが%1で参照できるとは知りませんでした(苦笑)。