0

このURLが欲しい

http://rebateninja.com/index.php?page=home

htaccess経由でこのようにプレビューされます

http://rebateninja.com/home

私はそれがそれほど難しいことではないことを知っています、そして私は以前にそれをしました、しかし何らかの理由でそれは今全く機能していません。私の.htaccessには次のものが含まれています。

RewriteEngine On
RewriteRule (index.php\?page=)(.*) /$2 [NC,R=301,L]

私が間違っていることは何ですか?おそらくそれは私のApacheバージョンに関連していますか?私は成功せずに私の朝全体を失いました!!! 回答ありがとうございます。

4

2 に答える 2

1

のクエリ文字列と照合することはできません。グループ化を後方参照するには、 またはを使用して%RewriteRuleを使用する必要があります。RewriteCond%{THE_REQUEST}%{QUERY_STRING}

RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ /index\.php\?page=([^&\ ]+)
RewriteRule /%2? [L,R=301]

これにより、ブラウザーが外部的にリダイレクトされ、アドレス バーの URL が変更されます。内部的に書き直すには、次のことを行う必要があります。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.phjp?page=$1 [L]
于 2012-10-27T21:31:54.027 に答える
0

これを試して。

RewriteRule ^index.php\?page=(.*)$ /$1 [NC,R=301,L]
于 2012-10-27T18:13:00.330 に答える