Please think of our environment and only print this e-mail if necessary.

* Ashish Mukherjee <ashish.mukher...@gmail.com> wrote:

> Date: Tue, 6 Oct 2015 14:36:32 +0530
> From: Ashish Mukherjee <ashish.mukher...@gmail.com>
> To: modperl@perl.apache.org
> CC: sourabh....@smartinsight.jp
> Subject: Unable to set custom header
> 
> Hello,
> 
> I am trying to set a custom header through a mod_perl handler.
> 
> My perl handler code is:
> 
> sub handler {
>     my $r = shift;
> 
>     $r->headers_out->add("foo" => "bar");
>     $r->log->error($r->connection->remote_ip()." is client IP");
> 
>     return Apache2::Const::OK;
> }
> 
> The handler gets called as I am able to see the log message, but the header
> is not emitted.
 
Is this the actual code you used? The response headers set by "headers_out" get 
cleared if there is an error, nor do they persist across internal redirects.

You might want to try err_headers_out instead, depending on the circumstances.

Regards,



Jie


> My Apache configuration is -
> 
>   ProxyRequests On
>   ProxyVia On
>   ProxyRemote * http://localhost:3128
> 
>   SetHandler modperl
>   PerlPostReadRequestHandler +Foo::Proxy
> 
>   <Location />
>             ProxyPass http://www.something.com/
>             ProxyPassReverse http://www.something.com/
>    </Location>
> 
> When I do the same through mod_header like this it works -
> 
> RequestHeader set foo bar
> 
> I want foo: bar to go as a header in the HTTP request to my proxy on port
> 3128.
> 
> Can anyone advise why my perl handler doesn't work when it should be doing
> the same thing as mod_headers?
> 
> Regards,
> Ashish

Reply via email to