0

mod_perl2フィルターについてです。

理想的には、フィルターの仕事は、入力データで何かを行い、そのデータを次のフィルターまたは実際に要求されたリソースに渡すことです。

私の場合、URLパターンに対してPerlInputFilterHandlerを定義しました。以下のロケーションタグを参照してください。

<Location /testproj/AServlet>
SetHandler modperl
PerlInputFilterHandler MyApache2::Test10
</Location>

このフィルタ(Test10)は、要求データを変更し、制御をAServlet(WebLogic Serverにデプロイされたサーブレット)に渡すことになっています。

ただし、このフィルターは呼び出されていますが、フィルターに何を書き込んでも、AServletに制御を渡していません。なぜそうなのか?

ありがとう。

4

1 に答える 1

0

行を削除してみてくださいSetHandler。リクエストのコンテンツフェーズはmod_perlで処理する必要があることをApacheに通知しますが、コンテンツフェーズを他の場所で処理する必要があるようです。PerlInputFilterHandlerディレクティブは、メインコンテンツハンドラーがでなくても有効になりmodperlます。コンテンツハンドラーがmod_perlによって実行されている場合は、PerlResponseHandler

于 2010-12-08T17:01:50.427 に答える