I added a test for mod_cgi and it works just fine, despite the report, but mod_perl indeed doesn't work with nph- scripts.
In mp1 it was easy to set a location for non-parsed headers by turning the headers parsing option off. This doesn't work in httpd-2.0 -- if headers aren't parsed and httpd-2.0 can make a sense of what the output should be like it will just send its own httpd headers.
Moreover if you look at mod_cgi.c:818, if the script's name starts with 'nph-' it'll cheat at internally remove all the protocol filters which mess with headers letting the script do its own thing.
The only way mod_perl users can send unparsed headers is by calling:
$r->assbackwards(1);
in their code (as kindly mentioned by Geoff a few months ago).
The problem is that this doesn't work for registry scripts striving to be compatible with mod_cgi, i.e. run unmodified.
Therefore I thought of two posible solutions:
1) Introduce a new option:
PerlOptions +NonParseHeaders
which will do just that, call: $r->assbackwards(1) at the beginning of the response phase.
2) An alternative solution is to mess with RegistryCooker to match /npn-/ and call $r->assbackwards(1) on behalf of the script.
The first solution closely matches mp1, by giving users control over the naming of the scripts and even handlers.
The second solution matches 1:1 mod_cgi, which hardcodes 'nph-' condition.
Which solution do you think is the best?
Also I'm not hardwired on 'PerlOptions +NonParseHeaders' so other names are welcome if you prefer the first option.
__________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]