【问题标题】:How to return original page from customer CGI Handler?如何从客户 CGI 处理程序返回原始页面?
【发布时间】:2020-07-01 20:52:52
【问题描述】:

我正在尝试使用 python CGI 处理程序拦截到 Apache 2.4 服务器中特定路径的每个请求,并根据需要修改原始请求。 (这是为了验证存储在 cookie 中的 JWT 令牌)

我指的是以下文档 (http://httpd.apache.org/docs/2.2/handler.html)

使用 CGI 脚本修改静态内容 以下指令 将导致对带有 html 扩展名的文件的请求触发 启动 footer.pl CGI 脚本。

Action add-footer /cgi-bin/footer.pl AddHandler add-footer .html

然后CGI脚本负责发送原来的 请求的文档(由 PATH_TRANSLATED 环境指向 变量)并进行所需的任何修改或添加。

我能够访问处理程序并验证其中的 JWT 令牌。 但是,问题是我找不到在令牌有效时发送原始文档的方法。

【问题讨论】:

    标签: cgi apache2.4


    【解决方案1】:

    您确实不应该为此任务使用处理程序。如果您必须用解释语言编写扩展,请查看RewriteMap prg: 扩展点。否则,您可以在用于访问控制的挂钩中编写代码。

    但在您展示的示例中,注入的处理程序仅适用于静态文件请求。它只是类似于cat'ing 文件作为参数传递然后写入自己的尾随数据。

    【讨论】:

      猜你喜欢
      • 2011-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-02
      • 2018-08-17
      • 2018-06-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多