0

私の目的は、jsp 以外の URL を別のサブフォルダーにリダイレクトすることです

ブラウザの URL

プロキシ

httpd.conf

RewriteCond  %{REQUEST_FILENAME} !(.+\.jsp) 
RewriteCond  %{REQUEST_URI} ^/site-(.*)/^(.*)$
RewriteRule  ^/site-(.*)/^(.*)$ /map/$2 [P] 

なぜ機能しないのか理解できません!

4

1 に答える 1

0

最初の行には REQUEST_URI を使用する必要があります。2 行目は必要ありません。最後に、正規表現は無効です。キャレットは「先頭に一致する」ことを意味するため、正規表現の途中で使用しても意味がありません。

 RewriteCond %{REQUEST_URI} !(.+\.jsp)
 RewriteRule ^/site-([^/]*)/(.*)$ /map/$2 [P]

ここでは、途中でキャレットを使用しますが、[] コンテキスト内では、キャレットは別の意味を持ちます:次を除く任意の文字に一致します (したがって、[^/]* はスラッシュではない文字列に一致します)。

于 2012-05-14T04:23:03.630 に答える