下記の(1)でアクセスされた場合、パラメータを全部削除して(2)の様に表示させるにはどうしたら良いでしょうか?
おそらくmode_rewriteを使うのだろうと思って、「.htaccess」へ(3)の通り記入したのですが、何も起こらず、パラメータがそのまま表示されてしまいます。
(1)http://hoge.com/?utm_source=yahoo&utm_medium=cpc&utm_campaign=cam
(2)http://hoge.com/
(3)
RewriteEngine On
RewriteBase /
RewriteRule ^\?utm.*$ [L]
mod_rewrite は通常サーバ内でパスの読み替えをするので、ブラウザのアドレスバーに表示される URL は変わりません。
ブラウザのアドレスバーに表示されるものを変えたい場合は、サーバ内で読み替えるのではなく、転送させる必要があります。
転送させるには、[L] の部分を [R=301,L] にすれば良いです。
mod_rewrite サンプル集/楽の「リダイレクト時のブラウザのURL欄」等参考にしてみてください。
ダメでした。
自分で調べるのを続けたところ、そのままではパラメータは置換の対象とならず、
RewriteCond %{QUERY_STRING} というのを使う必要がありました。
ダメです。