4

特定の親パスのみをディレクトリに転送するように Jetty を設定するにはどうすればよいですか? たとえば、ユーザーが localhost/ を要求した場合、localhost/CorrectDirectory に移動する必要があります。localhost/AnotherDirectory などのリクエストは正しいですか?

RewriteHandlerのドキュメントには次のように記載されています。

 <Set name="handler">
   <New id="Handlers" class="org.mortbay.jetty.handler.RewriteHandler">
     <Set name="rewriteRequestURI">false</Set>
     <Set name="rewritePathInfo">false</Set>
     <Set name="originalPathAttribute">requestedPath</Set>
     <Call name="addRewriteRule"><Arg>/other/*</Arg><Arg>/test</Arg></Call>
     <Call name="addRewriteRule"><Arg>/test/*</Arg><Arg></Arg></Call>
     <Call name="addRewriteRule"><Arg>/*</Arg><Arg>/test</Arg></Call>
     <Set name="handler">

一見すると、localhost/ の書き換えルールを設定しようとすると、localhost/DirectoryTwo から localhost/CorrectDirectory/DirectoryTwo へのダイレクトを防ぐために、すべてのサブディレクトリに名前を付ける必要があります (これは正しくありません)。

4

1 に答える 1

0

質問が正しかったかどうかはわかりませんが、次のようなものだったと思います。

「/」をリダイレクトしたいが、「/someting」ではなく「/」のみを「/somedestination」にリダイレクトしたい

この回答をご覧ください: https://stackoverflow.com/a/25405898/3489108

RewriteRegexRule を使用すると、目的の結果を得ることができます。正規表現 "^/$" は、文字列の先頭 (^)、正確なパス (/)、および文字列の末尾 ($) に一致します。これにより、正確なパスのみが一致することが保証されます。

私は jetty 9 埋め込みを使用しており、コードでリダイレクトをセットアップしているため、これを「構成方法」でセットアップする方法を理解することはできません。

于 2014-08-20T14:02:20.000 に答える