D'oh sorry bad value for POST_MAX, please ignore. -Mark -----Original Message----- From: Mark Hedges Sent: Monday, June 23, 2014 4:02 PM To: apreq-...@httpd.apache.org; mod_perl list Cc: Mark Hedges Subject: RE: APREQ_ERROR_MISMATCH error, I think
No one seems home on the apreq-dev list so I'm ccing mod_perl in the hope someone can help. Sorry if that annoys anyone. I rebuilt everything using perl 5.20.0, Apache 2.2.27 will all the mods, mod_perl svn trunk. When I use Apache2::Request, I get a server error, it fails with the message "Conflicting information," which seems to be related to the APREQ_ERROR_MISMATCH constant, but I don't know how to debug this. When I comment out creating the Apache2::Request object from $r, my dummy test handler runs fine. How would I try to debug this? Mark -----Original Message----- From: Mark Hedges Sent: Friday, June 20, 2014 5:51 PM To: apreq-...@httpd.apache.org Cc: Mark Hedges Subject: APREQ_ERROR_MISMATCH error, I think Any clues for the clueless? This is accompanied by a 500 internal server error. The same handler works fine when I do not use Apache2::Request. It is just a test handler to print out a string. Thanks. -Mark ----------------------- t/logs/error_log: ---- [Fri Jun 20 17:43:13.014222 2014] [mpm_event:notice] [pid 30042:tid 47602811847312] AH00489: Apache/2.4.9 (Unix) mod_apreq2-20090110/2.8.0 mod_perl/2.0.9dev Perl/v5.20.0 configured -- resuming normal operations ... [Fri Jun 20 17:43:13.014745 2014] [mpm_event:debug] [pid 30043:tid 1088698688] event.c(1949): AH02471: start_threads: Using epoll ... [Fri Jun 20 17:43:14.934954 2014] [authz_core:debug] [pid 30043:tid 1120168256] mod_authz_core.c(828): [client 127.0.0.1:60081] AH01628: authorization result: granted (no directives) [Fri Jun 20 17:43:14.953412 2014] [perl:error] [pid 30043:tid 1120168256] [client 127.0.0.1:60081] Conflicting information ------------------------- extra.last.conf.in: --- PerlSetEnv NTF_TEST_DIR @ServerRoot@ #LoadModule allowmethods_module /ntfhome/local/libexec/httpd/mod_allowmethods.so # where Apache2::Controller and the test application libs can be found PerlSwitches -I@ServerRoot@/blib PerlLoadModule Apache2::RequestRec PerlLoadModule Apache2::RequestIO PerlLoadModule Apache2::Log PerlLoadModule Apache2::RequestUtil <Perl> use NTF::Handler::NTR; $NTFHandlers::NTR = NTF::Handler::NTR->new(); </Perl> # startup file handled by Apache::Test # (add stuff to t/conf/modperl_extra.pl) <LocationMatch '^/foo\b'> SetHandler modperl PerlResponseHandler $NTFHandlers::NTR->redirect </LocationMatch> ------------------------------- package NTF::Handler::NTR; use strict; use warnings FATAL => 'all'; use English '-no_match_vars'; use YAML::XS; use Readonly; Readonly::Hash my %APREQ_NEW_PARAMS => ( POST_MAX => 1, MAX_BODY => 1, DISABLE_UPLOADS => 1, ); use Apache2::Const -compile => qw( OK HTTP_OK REDIRECT HTTP_BAD_REQUEST ); use Apache2::Log; use Apache2::RequestIO; # use Apache2::Request; sub new { return bless {}, __PACKAGE__ } sub redirect : method { my ($self, $r) = @_; # minor annoyance, have to do this every time $self->{r} = $r; # my $req = Apache2::Request->new($r, %APREQ_NEW_PARAMS); $r->content_type('text/plain'); $self->{r}->print("KIRK\n"); delete $self->{r}; delete $self->{apreq}; return Apache2::Const::OK; }