- 締切済み
.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のままにしたいのですが。 どのように記述したらよろしいのでしょうか。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- oshiete-muu
- ベストアンサー率0% (0/0)
回答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を割り当てた方が 楽なのでは?
補足
その通りなのですが、 phpを知らない人が、一時的にその仕様で利用し、 必要がなくなれば、htaccessファイルを削除するだけにしたかったので・・・。