【问题标题】:filter is not working as expected过滤器未按预期工作
【发布时间】:2011-05-22 01:48:17
【问题描述】:

关于 mod_perl2 过滤器。

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

在我的例子中,我为 URL 模式定义了一个 PerlInputFilterHandler。请参阅下面的位置标签:

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

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

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

谢谢。

【问题讨论】:

  • 答案可能取决于您的 PerlInputFilterHandler 的内容,尤其是关于它是否将控制权传递给下一个处理程序。请在此处发布一个独立的小示例,展示您所经历的行为。

标签: perl filter response mod-perl mod-perl2


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2014-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多