RewriteRule ^/index.php$ http://www.madsweb.dk/ [R,NC,L]
書き換えは逆に機能します。ユーザーがアドレスバーに表示するものを書き換えるのではなく、リクエストを別のリクエストに書き換えます (リダイレクトのようですが、サーバー上で透過的に処理されます)。
それが、そこでやろうとしていることができない理由でもあります。
90 年代が好きで使いやすさを気にしない場合は、代わりにフレームを使用できます。
しかし、冗談はさておき、このルールに基づいて構築するのが最善です。これはすでに優れています。
RewriteRule ^([a-zA-Z0-9]+)$ index.php?p=$1 [L,QSA]
追加情報 (id
この場合) をパターンに取得します。例:
RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?p=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9]+)/([0-9]+)$ index.php?p=$1&id=$2 [L,QSA]
またはより一般的 (ただし、パラメータは 1 つだけ):
RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?p=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([0-9]+)$ index.php?p=$1&$2=$3 [L,QSA]