Hello: here is as much information on this as i have currently
the test suite was blowing up on both freebsd and linux for different reasons, its all in the error report doc i guess at this point the only thing left is to try and compile apache/mod-perl from scratch.. but i dont have time for that right now please look over and tell me if i should proceed in that direction -- Clayton Cottingham - WinterMarket Networks Virtual Reality Programming, Design & Evangelist Phone:(604) 875-1213 Cell: (604) 506-7230 Vancouver, B.C. Canada [EMAIL PROTECTED] http://www.wintermarket.net IM's icq:154964789 hotmail:[EMAIL PROTECTED] yahoo:[EMAIL PROTECTED]
error report for problem with Apache::Request / Apache->request issue
operating systems are Mandrake 9.2
uname -a
Linux d64-180-42-110.bchsia.telus.net 2.4.22-10mdk #1 Thu Sep 18 12:30:58 CEST 2003
i686 unknown unknown GNU/Linux
or freebsd 5.1
FreeBSD devserver.ppw 5.1-RELEASE FreeBSD 5.1-RELEASE #0: Thu Jun 5 02:55:42 GMT 2003
[EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386
***unless specified error info will be linux first then freebsd***
#Anything in the error_log file that looks suspicious and possibly related to the
problem.
when it doesnt work it reports nothing to error log!
#Output of perl -V
-bash-2.05b$ perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 1) configuration:
Platform:
osname=linux, osvers=2.4.18-23mdksmp, archname=i386-linux-thread-multi
uname='linux hp6.mandrakesoft.com 2.4.18-23mdksmp #1 smp fri aug 2 12:31:40 cest
2002 i686 unknown unknown gnulinux '
config_args='-des -Dinc_version_list=5.8.0/i386-linux-thread-multi 5.8.0 5.6.1
5.6.0 -Darchname=i386-linux -Dcc=gcc -Doptimize=-O2 -fomit-frame-pointer -pipe
-march=i586 -mcpu=pentiumpro -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr
-Dman3ext=3pm -Dcf_by=MandrakeSoft -Dmyhostname=localhost [EMAIL PROTECTED] -Dd_dosuid
-Ud_csh -Duseshrplib -Dusethreads'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-I/usr/include/gdbm',
optimize='-O2 -fomit-frame-pointer -pipe -march=i586 -mcpu=pentiumpro ',
cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing
-I/usr/local/include -I/usr/include/gdbm'
ccversion='', gccversion='3.3.1 (Mandrake Linux 9.2 3.3.1-1mdk)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lndbm -lgdbm -ldl -lm -lcrypt -lutil -lpthread -lc
perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
libc=/lib/libc-2.3.2.so, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version='2.3.2'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic
-Wl,-rpath,/usr/lib/perl5/5.8.1/i386-linux-thread-multi/CORE'
cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
Locally applied patches:
RC4
Built under linux
Compiled at Sep 1 2003 17:29:01
@INC:
/usr/lib/perl5/5.8.1/i386-linux-thread-multi
/usr/lib/perl5/5.8.1
/usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.1
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.1
/usr/lib/perl5/vendor_perl/5.8.0
/usr/lib/perl5/vendor_perl
.
*************** OR freebsd *****************
-bash-2.05b$ perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 2) configuration:
Platform:
osname=freebsd, osvers=5.1-release, archname=i386-freebsd
uname='freebsd devserver.ppw 5.1-release freebsd 5.1-release #0: thu jun 5
02:55:42 gmt 2003 [EMAIL PROTECTED]:usrobjusrsrcsysgeneric i386 '
config_args='-sde -Dprefix=/usr/local -Darchlib=/usr/local/lib/perl5/5.8.2/mach
-Dprivlib=/usr/local/lib/perl5/5.8.2 -Dman3dir=/usr/local/lib/perl5/5.8.2/man/man3
-Dman1dir=/usr/local/man/man1 -Dsitearch=/usr/local/lib/perl5/site_perl/5.8.2/mach
-Dsitelib=/usr/local/lib/perl5/site_perl/5.8.2 -Dscriptdir=/usr/local/bin -Ui_malloc
-Ui_iconv -Uinstallusrbinperl -Dcc=cc -Doptimize=-O -pipe -mcpu=pentiumpro
-Duseshrplib -Dccflags=-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.2/BSDPAN"
-Dd_dosuid=define -Ui_gdbm -Dusethreads=n -Dusemymalloc=y'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=y, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.2/BSDPAN"
-DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -I/usr/local/include',
optimize='-O -pipe -mcpu=pentiumpro',
cppflags='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.2/BSDPAN" -DHAS_FPSETMASK
-DHAS_FLOATINGPOINT_H -fno-strict-aliasing -I/usr/local/include'
ccversion='', gccversion='3.2.2 [FreeBSD] 20030205 (release)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='cc', ldflags ='-Wl,-E -L/usr/local/lib'
libpth=/usr/lib /usr/local/lib
libs=-lm -lcrypt -lutil -lc
perllibs=-lm -lcrypt -lutil -lc
libc=, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='
-Wl,-R/usr/local/lib/perl5/5.8.2/mach/CORE'
cccdlflags='-DPIC -fPIC', lddlflags='-shared -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: USE_LARGE_FILES
Built under freebsd
Compiled at Jan 13 2004 10:05:37
@INC:
/usr/local/lib/perl5/site_perl/5.8.2/mach
/usr/local/lib/perl5/site_perl/5.8.2
/usr/local/lib/perl5/site_perl
/usr/local/lib/perl5/5.8.2/BSDPAN
/usr/local/lib/perl5/5.8.2/mach
/usr/local/lib/perl5/5.8.2
#Version of mod_perl (hint: it's logged into the error_log file when the server has
just started)
mod_perl/1.28
OR
mod_perl/1.29
#Version of apache (hint: it's logged into the error_log file when the server has just
started)
Apache-AdvancedExtranetServer/1.3.28 (Mandrake Linux/3mdk)
OR
Apache/1.3.29 (Unix)
#Options given to mod_perl's Makefile.PL while building it. If you are using a
pre-compiled binary (e.g., rpm), find the source package that was used to build this
binary and retrieve this information from there.
linux:
trying to figure out based on rpm, contacted the rpm's maintainer apxs/dso
freebsd;
sys admin didnt save config setting but it is apxs/dso
#Server configuration details (that's the relevant parts of your httpd.conf, usually
just the relevant mod_perl configuration sections).
Sea attachement pp.conf and startup.pl {probably un-essential} which
are both included into the httpd.conf like so:
PerlRequire conf/startup.pl
Include conf/pp.conf
#Relevant sections of your ErrorLog (make test's is: t/logs/error_log)
in this situation it doesnt push anything through
#If some other code doesn't work, minimize that code to a minimal size while it
reproduces the problem and attach it to the report.
See other attachements OtherThing.pm and UseMe.pm
#If you build from source, make sure that make test passes 100%.
######################
procedure
######################
#1
*go to site
http://<YOURSITE>/PP/otherthing?funk=rock or whatever
*upload file
this should upload file and pass $apr to UseMe
and display list of args via datadumper
#2
*go to site
http://<YOURSITE>/PP/useme?funk=rock or whatever
should pass form useme handler to other subroutine
and display list of args via datadumper
############################################
testing problems
############################################
######################
on linux
######################
-bash-2.05b$ t/TEST -httpd /usr/sbin/httpd
*** setting ulimit to allow core files
ulimit -c unlimited; t/TEST -httpd '/usr/sbin/httpd'
/usr/sbin/httpd -d /home/drfrog/bug-reporting-skeleton-mp1/t -f
/home/drfrog/bug-reporting-skeleton-mp1/t/conf/httpd.conf -DAPACHE2 -DPERL_USEITHREADS
using Apache-AdvancedExtranetServer/1.3.28
waiting 60 seconds for server to start: .Syntax error on line 80 of
/home/drfrog/bug-reporting-skeleton-mp1/t/conf/httpd.conf:
Invalid command 'SetHandler', perhaps mis-spelled or defined by a module not included
in the server configuration
!!!
server has died with status 255 (t/logs/error_log wasn't created, start the server in
the debug mode)
**********
notes
**********
the reason here is because mandrake 9.2 has ifmodule commands:
<IfModule mod_status.c>
<IfModule mod_info.c>
that wrap arond these directives
how can i set them into the httpd.conf?
please note it trying to use httpd2 as well
######################
on freebsd
######################
-bash-2.05b$ t/TEST -httpd /usr/local/apache/bin/httpd
/usr/local/apache/bin/httpd -d /usr/home/clayton/bug-reporting-skeleton-mp1/t -f
/usr/home/clayton/bug-reporting-skeleton-mp1/t/conf/httpd.conf -DAPACHE1
using Apache/1.3.29
waiting 60 seconds for server to start: .fopen: No such file or directory
httpd: could not open document config file
/usr/home/clayton/bug-reporting-skeleton-mp1/t/conf/.#extra.conf
............................................................
waiting 60 seconds for server to start: giving up after 61 secs
!!! server failed to start! (t/logs/error_log wasn't created, start the server in the
debug mode)
**********
notes
**********
where do i find fopen on freebsd?
also i had to move the mod_perl.pm into blib/lib b/c i couldnt find
how to use lib this into place!
########
errata
########
not sure how to add in the fileupload procedure, please see bug.t for
a how i was trying, but unfortunately i didnt get far enough in test
suite to accomodate this
bugrepmod.tgz
Description: application/compressed-tar
<Perl>
my @modules=(
['login','','Login'],
['addsite','','AddSite'],
['addpages','','AddPages'],
['addproducts','PP/','AddProducts'],
['editsite','PP/','EditSite'],
['editpages','PP/','EditPages'],
['editproducts','PP/','EditProducts'],
['index.html','PP/','ManageSite'],
['managepages','PP/','ManagePages'],
['manageproducts','PP/','ManageProducts'],
['upload','PP/','Uploads'],
['excelupload','PP/','ExcelUploads'],
['exceldnload','PP/','ExcelDnloads'],
['useme','PP/','UseMe'],
['otherthing','PP/','OtherThing'],
);
foreach (@modules){
my $file = File::Spec::Functions::catfile('/',$_->[1],$_->[0]) ;
$Location{$file}={
SetHandler =>'perl-script',
PerlHandler =>'PP::'.$_->[2]
};
}
</Perl>
#PerlTaintCheck On
#PerlSetVar AuthCookieDebug 1
PerlModule PP::Login
PerlSetVar Path /
PerlSetVar PPLoginScript /login
PerlSetVar PPDomain .cms_prototype.ppw
PerlSetVar secret "where is the security"
<Location /PP/>
AuthType PP::Login
AuthName PP
PerlAuthenHandler PP::Login->authenticate
PerlAuthzHandler PP::Login->authorize
require valid-user
</Location>
<Files LOGOUT>
AuthType PP::Login
AuthName PP
SetHandler perl-script
PerlHandler PP::Login->logout
</Files>
<Files LOGIN>
AuthType PP::Login
AuthName PP
SetHandler perl-script
PerlHandler PP::Login->login
</Files>
#example PerlRequire script for mod_perl
#it's recommened that you use Apache::Registry as your default
#handler for the handler stage of a request
#or, implement your handler for this or any stage of a request
#as a PerlModule under the Apache:: namespace
#PerlRequire is here if you choose otherwise...
#To load this file when the server starts -
#can be a full path or relative to ServerRoot
#add this to srm.conf:
#PerlRequire scripts/startup.pl
# make sure we are in a sane environment.
$ENV{MOD_PERL} or die "not running under mod_perl!";
#modify @INC if needed
use lib qw(/usr/local/apache/pm/);
#load perl modules of your choice here
#this code is interpreted *once* when the server starts
use CGI qw(:common);
#use DBI;
use Apache;
use Apache::Cookie;
use Apache::AuthCookie;
use Apache::Request;
use Apache::Registry;
use Apache::Constants qw(:common REDIRECT) ;
use Apache::DBI;
use Apache::Blog;
use Apache::Session::MySQL;
use Data::Dumper qw(Dumper);
use HTML::Template;
use HTML::Pager;
use Locale::SubCountry;
use Crypt::CBC;
use Email::Valid;
use Mail::Sender;
use LWP::UserAgent ();
use File::Spec::Functions qw( catdir rootdir );
use LWP::Simple;
use Spreadsheet::ParseExcel;
use Spreadsheet::WriteExcel;
use URI::Escape;
# Initialize the database connections for each child
=cut
Apache::DBI->connect_on_init
("DBI:mysql:database=pp;host=localhost;mysql_socket=/tmp/mysql.sock",
"drfrog","trans22",
{
PrintError => 1, # warn() on errors
RaiseError => 0, # don't die on error
AutoCommit => 1, # commit executes immediately
}
);
=cut
#$Apache::DBI::DEBUG = 1;
use PP::Global;
#you may define Perl*Handler subroutines here too
1; #return true value
-- Reporting bugs: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html
