我正在開發一個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 –