I believe I'm having a similar problem.

Mod_perl is used to perform authentication and authorization on our
servers. After our servers have been up for a couple of hours, areas of
our site that require authentication begin to intermittently have this
problem. All of the POSTed form data is missing.

We are running on Windows 2003 server, perl version 5.8.7, modperl 2.0.2
and apache 2.0.53 

I'm willing to send/post code to someone if that will help...?


Derrick Stone
Internet Specialist
Web Development Center
UVa Health System


-----Original Message-----
From: Srebrenko Sehic [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, November 02, 2005 11:18 AM
To: modperl@perl.apache.org
Subject: [mp2] Re-using POST data between input handler/filter

Hi list,

I have a PerlAccessHandler which needs a copy of the POST data from the
client in order to perform some validation. If the POST data is valid,
the
request is passed to mod_proxy which sends it to the backend server
(filter returns Apache2::Const::OK) If the POST data is invalid, it
returns Apache2::Const::FORBIDDEN.

My PerlAccessHandler gets the POST by reading the bucket brigades
directly. However, when the data is read, POST request body is no longer
available to mod_proxy which basically forwards only the headers and the
query to the backend server.

Originially, my PerlAccessHandler added an input filter (via
$r->add_input_filter) which went thru the POST data (using the streaming
API). In that scenario, mod_proxy gets the entire POST request body if
my
input filter returned Apache2::Const::OK. However, when it returned
Apache2::Const::FORBIDDEN (the POST data was invalid) mod_proxy gives me
an error:

Unknown error: 404: proxy: prefetch request body failed

This didn't happend in Apache 2.0.54 but started in 2.0.55 which I'm
currently using together with mod_perl 2.0.2 (static build).

Any pointers on what I'm doing wrong?

Thanks,
/haver

Reply via email to