• 締切済み

.htaccessでRewriteRule

.htaccessでパラメータ付のアドレスにRewriteRuleしたいのですが。 例えば test.phpにアクセスされた場合、test.php?id=5 としたいのですが。 現状、下記のように.htaccessに記述したのですがうまくいきません。 RewriteEngine On RewriteRule ^test.php$ /test.php?id=5 [R=301,L] また、test.phpにはパラメータ付(test.php?id=1)でアクセスされる場合もあります。 その場合には、test.php?id=1のままにしたいのですが。 どのように記述したらよろしいのでしょうか。

みんなの回答

回答No.2

$_GET['id']を見て無ければtest.php?id=5へリダイレクト。 test.php?id=1はそのままであればhtaccessを使わず、以下のような感じでうまくいきませんかね? if ( !isset($_GET['id']) ) { header('Location:test.php?id=5'); exit; }

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

それって$_GET["id"]をチェックしてissetされてなければ5を割り当てた方が 楽なのでは?

rabu_chihaha
質問者

補足

その通りなのですが、 phpを知らない人が、一時的にその仕様で利用し、 必要がなくなれば、htaccessファイルを削除するだけにしたかったので・・・。

関連するQ&A

専門家に質問してみよう