I wrote a simple module that parses the HTTP response body and updates certain text. I want the script to be able to parse and manipulate the HTTP response headers as well. For example add secure and HttpOnly flags to certain cookies, or add a redirection when a 500 error code is returned. The code I have so far is:
====================================================================================== package TE::ST; # $Header:$ use strict; use warnings; use Apache2::Filter (); use Apache2::RequestRec (); use APR::Table (); use Apache2::Const -compile => qw(OK); use constant BUFF_LEN => 1024; no warnings qw(redefine); sub handler { my $f = shift; while ($f->read(my $buffer, BUFF_LEN)) { # Disable autocomplete $buffer =~ s/login method="post"/login method="post" autocomplete="off" /g; $f->print($buffer); } return Apache2::Const::OK; } 1; ====================================================================================== when using f->read it appears as though the HTTP headers are not including. I know err_headers_out should have access to the headers, but is there a way to force f->read to access the HTTP headers as well? I've seen the set and add methods for err_headers_out, but can someone point me to a code example of either editing the HTTP headers or rewriting the server response when certain response codes are received? Thanks.