0

I would like to rewrite an address from:

http://mysite.com/page?att=XXXXX to: http://mysite.com/page.php?att=XXXXX

I have tried the following code, but does not work for me. I guess the question mark is the problem:

RewriteRule ^page?att=([A-Za-z0-9-_]+)/?$ page.php?att=$1 [L]
4

2 に答える 2

0

のクエリ文字列と照合することはできませんRwriteRuleが、この場合、クエリ文字列をまったく書き換えていません。URI(page-> page.php)を書き換えるだけで、クエリ文字列が自動的に追加されます。

RewriteRule ^/?page$ page.php [L]
于 2012-10-03T18:21:16.840 に答える
0

リダイレクトを明示的にトリガーするRディレクティブと、リダイレクトURLにクエリ文字列全体を保持するQSAを含めます。

最後に、コンテキストによっては、URIがスラッシュで始まる場合があります。その場合、URIがスラッシュで始まらないようにする必要があるルールは一致しません。/を追加しますか?最初は、先頭にスラッシュがある場合とない場合の両方のURIに一致します。

RewriteRule ^/?page/?$ page.php [R,QSA,L]

これを試してみてください。

于 2012-10-03T18:24:00.707 に答える