0

这是关于 mod_perl2 过滤器的。

理想情况下,过滤器的工作是处理输入数据并将数据传递给下一个过滤器或实际请求的资源。

就我而言,我为 URL 模式定义了一个 PerlInputFilterHandler。请参阅下面的位置标签:

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

此过滤器 (Test10) 应该更改请求数据并将控制权传递给 AServlet(部署在 WebLogic Server 上的 servlet)。

然而,这个过滤器被调用,但它没有将控制权传递给 AServlet——不管我在过滤器中写了什么。为什么这样?

谢谢。

4

1 回答 1

0

尝试删除SetHandler线。它告诉 Apache 请求的内容阶段应该由 mod_perl 处理,但听起来您希望在其他地方处理内容阶段。即使主内容处理程序不是,PerlInputFilterHandler 指令仍应生效modperl。如果内容处理程序由 mod_perl 完成,您还应该设置PerlResponseHandler

于 2010-12-08T17:01:50.427 回答