0

次の書き換え設定があります。

RewriteRule r/(.*) scripts/report.php?cp=1&id=$1  

mydomain.com/r/123abc をリダイレクトするのはうまく機能しますが、「r」で始まるサーバー上のすべてのページをリダイレクトしています。URLが mydomain.com/r/ の場合にのみリダイレクトするように、これをより具体的にする方法を知っている人はいますか? mydomain.com をルールに含めることができないように、これを一般的なものにしておく必要があることに注意してください。

4

3 に答える 3

0

これがあなたのために働くかどうかはわかりませんが(テストされていません)、試してみてください:

# Rewrite ini
RewriteEngine on
RewriteBase /mydomain.com/

# Redirect all /mydomain.com/r/* calls to scripts/report.php
RewriteRule ^r/(.*)$ scripts/report.php?cp=1&id=$1 [QSA]

お役に立てば幸いです。

于 2012-04-05T15:42:26.710 に答える
0

書き換えルール^/の前にを入れてみてください。r/(.*)これはそれを作るでしょう:

RewriteRule ^/r/(.*) scripts/report.php?cp=1&id=$1
于 2012-04-05T15:43:30.560 に答える
0

正規表現が文字列だけではなく、文字列全体と一致するように指定する必要があります。^および$記号を使用してこれを行うことができます。

RewriteRule ^r/(.*)$ scripts/report.php?cp=1&id=$1
于 2012-04-05T15:44:57.340 に答える