我正在开发一个Web应用程序,我想知道是否有方法或某种模块可以拦截或处理任何HTTP请求,然后才能显示给客户端。我无法修改httpd.conf文件,因此它不是一个选项。 我想通过拒绝访问或重定向到其他页面或通过修改发送给客户端和其他某些东西的响应来为我的Web应用程序添加一些安全性。 我也听说过请求调度,也许它可以帮助我。有人知道如何做到这一点?如何拦截Perl中的HTTP请求?
1
A
回答
3
也许你可以使用Plack::Handler::Apache2启用PSGI支持。从那里,你可以使用PSGI中间件模块来修改请求和响应。
如果不知道如何在您的mod_perl环境中执行Perl的设置,就很难获得更具体的内容。
2
你可能想看看HTTP::Proxy,一个perl模块编写一个Web代理...这样的例子:
# alternate initialisation
my $proxy = HTTP::Proxy->new;
$proxy->port(3128); # the classical accessors are here!
# this is a MainLoop-like method
$proxy->start;
my $d = HTTP::Daemon->new || die;
while (my $c = $d->accept) {
while (my $r = $c->get_request) {
if ($r->method eq 'GET' and $r->uri->path eq "/xyzzy") {
# remember, this is *not* recommended practice :-)
$c->send_file_response("/home/hd1/.zshrc");
}
else {
$c->send_error(RC_FORBIDDEN)
}
}
$c->close;
undef($c);
}
相关问题
- 1. 如何拦截C#中的http请求?
- 2. 的Java拦截HTTP请求
- 3. 拦截http POST请求
- 4. 拦截http请求/响应
- 5. 拦截Redux中的HTTP请求
- 6. 在JavaScript中拦截HTTP请求
- 7. Selenium:如何拦截请求
- 8. Android - 拦截Android上的HTTP请求
- 9. 拦截传出的HTTP请求
- 10. 如何拦截IIS中的WCF请求
- 11. Worklight - 拦截HTTP请求以添加Cookie
- 12. 拦截并操纵HTTP POST请求
- 13. 更改现有$ http请求拦截
- 14. PHP - Smarty - Http请求拦截器
- 15. 如何通过angularjs中的拦截器发送http请求?
- 16. 拦截a4j:commandButton请求
- 17. 拦截WEBrick请求
- 18. 的Rails 3:如何拦截任何HTTP请求
- 19. 如何在http拦截器中取消请求?
- 20. 如何拦截webservicehost的请求
- 21. 如何拦截使用javascript的网站http请求?
- 22. $ http请求没有被请求拦截器处理
- 23. 在$ http拦截器中重新调用$ http请求
- 24. 如何构建Firefox扩展来拦截HTTP请求和响应?
- 25. 如何拦截和更改http请求与c#
- 26. 如何拦截请求结束?
- 27. 如何拦截css获取请求
- 28. 如何拦截网络请求
- 29. 如何从WCF请求拦截Authorization头
- 30. 如何拦截WCF Web方法请求?
您必须提供更多信息:哪些框架/模块;它是如何工作的(cgi/fastcgi/mod_perl);如何将响应发送到客户端等 – PSIAlt
我只想知道拦截HTTP请求的方法,就这些。我使用的是mod_perl,但我无法对其进行任何更改,而且我也没有使用任何框架。 – ChuyAMS
如果您使用的是mod_perl,那么您可以完全访问Apache请求生命周期。 http://perl.apache.org/docs/2.0/user/handlers/http.html –