[mp1] building mp1 with mod_ssl - what am I doing wrong?
I must be spoilt by apache2 :) RedHat Linux 7.3 on i386, trying to build mod_perl and mod_ssl into apache 1.3.31. Here's what I'm doing : tar -xzf ../apache_1.3.31.tar.gz tar -xzf ../mod_ssl-2.8.19-1.3.31.tar.gz tar -xzf ../mod_perl-1.29.tar.gz cd mod_ssl-2.8.19-1.3.31/ ./configure --with-apache=../apache_1.3.31 Configuring mod_ssl/2.8.19 for Apache/1.3.31 + Apache location: ../apache_1.3.31 (Version 1.3.31) + Auxiliary patch tool: ./etc/patch/patch (local) + Applying packages to Apache source tree: o Extended API (EAPI) o Distribution Documents o SSL Module Source o SSL Support o SSL Configuration Additions o SSL Module Documentation o Addons Done: source extension and patches successfully applied. Now proceed with the following commands (Bourne-Shell syntax): $ cd ../apache_1.3.31 $ SSL_BASE=/path/to/openssl ./configure ... --enable-module=ssl $ make $ make certificate $ make install cd ../mod_perl-1.29/ perl Makefile.PL EVERYTHING=1 Configure mod_perl with ../apache_1.3.31/src ? [y] Shall I build httpd in ../apache_1.3.31/src for you? [y] n make make install At this stage, if I understand correctly, I shuold be able to build apache, and it will make the mod_ssl and mod_perl things too. My config for apache is : CC="gcc" \ CFLAGS=" -fno-strict-aliasing -I/usr/local/include" \ SSL_BASE="/usr/local/src/apache/openssl-0.9.6d" \ ./configure \ "--with-layout=Apache" \ "--prefix=/usr/local/apache-test" \ "--disable-rule=EXPAT" \ "--enable-rule=EAPI" \ "--activate-module=src/modules/perl/libperl.a" \ "--enable-module=so" \ "--enable-module=rewrite" \ "--enable-module=access" \ "--enable-module=auth" \ "--enable-module=include" \ "--enable-module=mime" \ "--enable-module=log_config" \ "--enable-module=alias" \ "--enable-module=rewrite" \ "--enable-module=vhost_alias" \ "--enable-module=proxy" \ "--enable-module=log_agent" \ "--enable-module=headers" \ "--enable-module=expires" \ "--enable-module=mime_magic" \ "--enable-module=ssl" \ "--enable-shared=rewrite" \ "--enable-shared=access" \ "--enable-shared=auth" \ "--enable-shared=include" \ "--enable-shared=mime" \ "--enable-shared=log_config" \ "--enable-shared=alias" \ "--enable-shared=rewrite" \ "--enable-shared=vhost_alias" \ "--enable-shared=proxy" \ "--enable-shared=log_agent" \ "--enable-shared=headers" \ "--enable-shared=expires" \ "--enable-shared=mime_magic" \ "--enable-shared=ssl" Shows me this at config-time : Configuring for Apache, Version 1.3.31 + using installation path layout: Apache (config.layout) + activated perl module (modules/perl/libperl.a) Creating Makefile Creating Configuration.apaci in src Creating Makefile in src + configured for Linux platform + setting C pre-processor to gcc -E + using "tr [a-z] [A-Z]" to uppercase + checking for system header files + adding selected modules o rewrite_module uses ConfigStart/End + using -ldb1 for DBM support enabling DBM support for mod_rewrite o ssl_module uses ConfigStart/End + SSL interface: mod_ssl/2.8.19 + SSL interface build type: DSO + SSL interface compatibility: enabled + SSL interface experimental code: disabled + SSL interface conservative code: disabled + SSL interface vendor extensions: disabled + SSL interface plugin: Built-in SDBM + SSL library path: /usr/local/src/apache/openssl-0.9.6d + SSL library version: OpenSSL 0.9.6d 9 May 2002 + SSL library type: source tree only (stand-alone) + enabling Extended API (EAPI) + using -ldl for vendor DSO support + checking sizeof various data types + doing sanity check on compiler and options Creating Makefile in src/support Creating Makefile in src/regex Creating Makefile in src/os/unix Creating Makefile in src/ap Creating Makefile in src/main Creating Makefile in src/modules/standard Creating Makefile in src/modules/proxy Creating Makefile in src/modules/ssl And then make fails : ===> src/modules/perl gcc -I. -I../../include -I../../include/regex -I../../include/../ -DLINUX=22 -DHAVE_SET_DUMPABLE -I/usr/include/db1 -DMOD_SSL=208119 -DUSE_HSREGEX -DEAPI -fno-strict-aliasing -I/usr/local/include `../apaci` -I`/usr/local/bin/perl -MConfig -e 'print $Config{archlibexp}'`/CORE `/usr/local/bin/perl '-MApache::ExtUtils=%Config' -e 'print $Config{ccflags}'` -DMOD_PERL_VERSION=\"1.29\" -c -o mod_perl_opmask.o mod_perl_opmask.c /bin/sh: ../apaci: No such file or directory In file included from ../../include/httpd.h:29, from apache_inc.h:120, from mod_perl.h:162, from mod_perl_opmask.c:1: ../../include/ap_config.h:71:16: os.h: No such file or directory make[4]: *** [mod_perl_opmask.o] Error 1 make[3]: *** [all] Error 1 make[2]: *** [subdirs] Error 1 make[2]: Leaving directory `/usr/local/src/apache/apache-1.3.31/apache_1.3.31/src' make[1]: *** [build-std] Error 2 make[1]: Leaving directory `/usr/local/src/apache/apache-1.3.31/apache_1.3.31' make: *** [build] Error 2
Re: [mp1] building mp1 with mod_ssl - what am I doing wrong?
Stas Bekman wrote: Carl, can you build Apache w/o mod_perl w/ the rest of the things? Yes, it's just the mod_perl stuff that's barfing. It looks like the mod_perl make install isn't putting the header files into src/includes/. A quick google shows a bunch of relevant hits: http://www.google.ca/search?hl=en&ie=UTF-8&q=%22os.h%3A+No+such+file+or+directory%22&btnG=Search&meta= Also make sure that you are following the exact instructions from: http://perl.apache.org/docs/1.0/guide/install.html#mod_perl_and_mod_ssl___openssl_ The list of arguments I want to feed to the actual apache configure make this a bit of a pain, and I thought that it wasn't necessary to build httpd from within mod_perl (and indeed it shouldn't be anyway!). But, at your suggestion, I've now done this, following the instructions on the site you referenced : cd openssl-0.9.7d ./config --prefix=/usr/local/openssl-0.9.7d make make test make install then in the mod_perl dir : perl Makefile.PL USE_APACI=1 EVERYTHING=1 DO_HTTPD=1 SSL_BASE=/usr/local/openssl-0.9.7d APACHE_PREFIX=/usr/local/apache-test APACHE_SRC=../apache_1.3.31/src APACI_ARGS='--enable-module=ssl,--enable-module=rewrite,--enable-module=proxy, --enable-module=so,--enable-module=access,--enable-module=auth, --enable-module=include,--enable-module=mime,--enable-module=log_config, --enable-module=alias,--enable-module=vhost_alias,--enable-module=log_agent, --enable-module=headers,--enable-shared=expires,--enable-shared=mime_magic, --enable-shared=ssl' And that compiled ok. Maybe the problem was this : "--activate-module=src/modules/perl/libperl.a" \ ? I also upgraded openssl to the latest 0.9.7 release. -- Report problems: 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
[mp2] apache::server missing?
I've just done a bit of an overhaul of my mp2 install on apache 2.0.50/perl 5.8.5/mp2-current, NetBSD 1.6.2, and am having a few problems. the most critical one is that I can't find apache::server anymore. My old startup.pl scripts had use Apache::Server (); Has this been done away with? I noticed no mention of it in http://perl.apache.org/docs/2.0/user/config/config.html which suggests that it has? I'vr a bunch of compile & install errors that I'll post proper bug reports about in dev tonight or tomorrow :) -- Report problems: 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
Re: [mp2] apache::server missing?
Stas Bekman wrote: Carl Brewer wrote: I've just done a bit of an overhaul of my mp2 install on apache 2.0.50/perl 5.8.5/mp2-current, NetBSD 1.6.2, and am having a few problems. the most critical one is that I can't find apache::server anymore. My old startup.pl scripts had use Apache::Server (); Has this been done away with? I noticed no mention of it in http://perl.apache.org/docs/2.0/user/config/config.html which suggests that it has? I'vr a bunch of compile & install errors that I'll post proper bug reports about in dev tonight or tomorrow :) That's what we post the Changes log for: Subject: [ANNOUNCE] mod_perl 1.99_15 mod_perl 1.99_15 is out: [...] Changes since 1.99_14: [...] In order to be consistent with Apache::RequestRec, Apache::Server is now Apache::ServerRec and all methods/functions from Apache::Server now live in Apache::ServerRec. [Stas] Ok :) How abouit this one though? Has APR::brigade changed too? : [Wed Aug 25 18:02:54 2004] [error] Can't locate object method "empty" via package "APR::Brigade" at /data/www/aboc/lib/CB.pm line 402.\n This is from : my $bb = APR::Brigade->new($r->pool, $ba); do { my $rv = $filters->get_brigade($bb, Apache::MODE_READBYTES, APR::BLOCK_READ, IOBUFSIZE); if ($rv != APR::SUCCESS) { return $rv; } while (!$bb->empty) { my $buf; Any quick hints? Carl -- Report problems: 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
[mp2] code broken by 1.99_15 or _16 or _17-dev
Stas et all, Here's the code that I was using to grab POSTed values and put them into a hash 0 sorry for the verbosity of this post, I won't pretend to fully understand this code, Stas wrote the majority of it way back when libapreq wouldn't compile on NetBSD, and I've been using it ever since. If there's a better way to do this with libapreq, I'd preobably like to move my code over to using it! Code attached, which no longer works : I call this to fill a simple hash, eg : my %posted_data = CB::hash_post($r); sub read_post { use Apache::Filter (); use APR::Bucket (); use APR::Brigade (); use constant IOBUFSIZE => 8192; use Apache::Const -compile => qw(MODE_READBYTES); use APR::Const-compile => qw(SUCCESS BLOCK_READ); use CGI::Util; my $r = shift; my $debug = shift || 0; my @data = (); my $seen_eos = 0; my $filters = $r->input_filters(); my $ba = $r->connection->bucket_alloc; my $bb = APR::Brigade->new($r->pool, $ba); do { my $rv = $filters->get_brigade($bb, Apache::MODE_READBYTES, APR::BLOCK_READ, IOBUFSIZE); if ($rv != APR::SUCCESS) { return $rv; } while (!$bb->is_empty) { my $buf; my $b = $bb->first; $b->remove; if ($b->is_eos) { warn "EOS bucket:\n" if $debug; $seen_eos++; last; } my $status = $b->read($buf); warn "DATA bucket: [$buf]\n" if $debug; if ($status != APR::SUCCESS) { return $status; } push @data, $buf; } $bb->destroy; } while (!$seen_eos); my $string = join '', @data; return $string; } sub hash_post { # this has to get called instead of read_post, as read_post() # gobbles up the POST arguments and they're no longer available... # and this calls read_post() :) # returns a hash of all the POST values my ($r) = shift; my $post_string = CB::read_post($r); my %rethash = {}; my @bits = split(/&/, $post_string); foreach my $bit (@bits) { $bit =~ /^(.*)=(.*)$/; my $key = CGI::Util::unescape($1); my $value = CGI::Util::unescape($2); $rethash{$key} = $value; } return %rethash; } -- Report problems: 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
Re: [mp2] code broken by 1.99_15 or _16 or _17-dev
Stas Bekman wrote: I'm thinking that it might be beneficial to implement it in C. Would I be better served by switching to using libapreq? Isn't this what it's for? I recall you sent me that code a long time ago as the libapreq stuff wouldn't compile cleanly on NetBSD. I'd prefer not to have to maintain code that goes this deeply into mod_perl :) I won't pretend to be anything like a solid enough perl hacker to do anything but make an awful mess! -- Report problems: 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
[mp2] a little OT, problem finding libapr
After upgrading to Stas' latest MP2 stuff a few days ago, I started seeing the following error on a perl script that's not running through mp2, which I thought a little odd! steel1: {12} /data/www/aboc/utils/session_cleanup.pl Can't load '/usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/auto/APR/APR.so' for module APR: Shared object "libapr-0.so.9" not found at /usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd/DynaLoader.pm line 230. at /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/APR/Bucket.pm line 23 Compilation failed in require at /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/APR/Bucket.pm line 23. BEGIN failed--compilation aborted at /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/APR/Bucket.pm line 23. Compilation failed in require at /data/www/aboc/lib/CB.pm line 378. BEGIN failed--compilation aborted at /data/www/aboc/lib/CB.pm line 378. Compilation failed in require at /data/www/aboc/utils/session_cleanup.pl line 7. BEGIN failed--compilation aborted at /data/www/aboc/utils/session_cleanup.pl line 7. This is on NetBSD 1.6.2, and libapr-0.so.9 exists : steel1: {13} locate libapr-0.so.9 /usr/local/apache2/lib/libapr-0.so.9 /usr/local/apache2/lib/libapr-0.so.9.2 /usr/local/apache2/lib/libapr-0.so.9.3 /usr/local/apache2/lib/libapr-0.so.9.4 /usr/local/apache2/lib/libapr-0.so.9.5 The offending line in CB.pm is : use APR::Bucket (); Which is obviously Apache stuff, so it's probably been affected by something. I don't understand why it's not seeing the library though? I've tried upgrading to a fresh install of perl 5.8.5 (I was running 5.8.4) and the latest libapreq2 from Joe this morning, and recompiing & reinstalling apache2 (2.0.50) hoping that something in one of those installs would fix whatever's not looking for the library in the right place, but to no avail. Any suggestions? thanks! Carl -- Report problems: 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
Re: [mp2] a little OT, problem finding libapr
Stas Bekman wrote: Carl, remember to always file a proper bug report and save yourself and us time. The report includes the info we need. Other than that, please send us the output of: I would, except I don't think it's a bug report, it's probably a stuff-up at my end :) ldd /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/auto/APR/APR.so steel1: {15} ldd /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/auto/AP APR.so /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd/auto/APR/APR.so: -lapr-0.9 => not found -lm.0 => /usr/lib/libm387.so.0 -lm.0 => /usr/lib/libm.so.0 -lcrypt.0 => /usr/lib/libcrypt.so.0 -lresolv.1 => /usr/lib/libresolv.so.1 -laprutil-0.9 => not found -lexpat.5 => /usr/pkg/lib/libexpat.so.5 ls -l /usr/local/apache2/lib/libapr-0.so.9 steel1: {16} ls -l /usr/local/apache2/lib/libapr-0.so.9 lrwxrwxr-x 1 root wheel 15 Aug 25 08:42 /usr/local/apache2/lib/libapr-0.so.9 -> libapr-0.so.9.5 Obviously the lapr being missing is a problem! -- Report problems: 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
Re: [mp2] a little OT, problem finding libapr
Please send the output of mp2bug as requested before. Done. I just pulled the latest CVS down, same problem. -8<-- Start Bug Report 8<-- 1. Problem Description: [DESCRIBE THE PROBLEM HERE] 2. Used Components and their Configuration: *** mod_perl version 1.9917 *** using /data/src/modperl-2.0/bin/../lib/Apache/BuildConfig.pm *** Makefile.PL options: MP_APR_LIB => aprext MP_APXS=> /usr/local/apache2/bin/apxs MP_COMPAT_1X => 1 MP_GENERATE_XS => 1 MP_LIBNAME => mod_perl MP_USE_DSO => 1 MP_USE_STATIC => 1 *** The httpd binary was not found *** (apr|apu)-config linking info -L/usr/local/apache2/lib -lapr-0 -lm -lcrypt -lresolv -L/usr/local/apache2/lib -laprutil-0 -lexpat *** /usr/local/perl-5.8.5/bin/perl -V Summary of my perl5 (revision 5 version 8 subversion 5) configuration: Platform: osname=netbsd, osvers=1.6.2, archname=i386-netbsd uname='netbsd steel1.stealstopper.com 1.6.2 netbsd 1.6.2 (generic) #0: tue feb 10 21:53:10 utc 2004 [EMAIL PROTECTED]:autobuildnetbsd-1-6-patch002i386objautobuildnetbsd-1-6-patch002srcsysarchi386compilegeneric i386 ' config_args='' 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 ='-fno-strict-aliasing -pipe -I/usr/pkg/include', optimize='-O', cppflags='-fno-strict-aliasing -pipe -I/usr/pkg/include' ccversion='', gccversion='2.95.3 20010315 (release) (NetBSD nb3)', 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,-rpath,/usr/pkg/lib -Wl,-rpath,/usr/local/lib -L/usr/pkg/lib -L/usr/local/lib' libpth=/usr/pkg/lib /usr/local/lib /usr/lib libs=-lm -lcrypt -lutil -lc -lposix perllibs=-lm -lcrypt -lutil -lc -lposix libc=/usr/lib/libc.so, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-R/usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd/CORE' cccdlflags='-DPIC -fPIC ', lddlflags='--whole-archive -shared -L/usr/pkg/lib -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under netbsd Compiled at Aug 25 2004 14:17:37 %ENV: PERL_LWP_USE_HTTP_10="1" @INC: /usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd /usr/local/perl-5.8.5/lib/5.8.5 /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd /usr/local/perl-5.8.5/lib/site_perl/5.8.5 /usr/local/perl-5.8.5/lib/site_perl /usr/local/perl-5.8.4 /usr/local/perl-5.8.1 . *** Packages of interest status: Apache::Request: - CGI: 3.05 LWP: 5.800 mod_perl : 1.9917 3. This is the core dump trace: (if you get a core dump): [CORE TRACE COMES HERE] This report was generated by ./mp2bug on Fri Aug 27 00:16:18 2004 GMT. -8<-- End Bug Report --8<-- -- Report problems: 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
Re: [mp2] a little OT, problem finding libapr
I'd suggest to completely nuke /usr/local/apache2, install Apache from scratch and chances are that everything will work fine. You have too many old libs there. I'll give that a go tonight or tomorrow when I get a few spare hours, thanks! -- Report problems: 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
Re: [mp2] a little OT, problem finding libapr
Stas Bekman wrote: I'd suggest to completely nuke /usr/local/apache2, install Apache from scratch and chances are that everything will work fine. You have too many old libs there. I did that, and still had the same problem. I ended up setting LD_LIBRARY_PATH to /usr/local/apache2/lib and it was all ok again. I've also moved my code to using apreq2, instead of the Stas & Carl hack job I was running :) (I cheated and used a wrapper change, so I didn't have to do wholesale changes to my code). Out of curiosity, is anyone working on docs for apreq2 for people in a hurry? :) Ie: with simple examples in it? Carl -- Report problems: 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
[mp2] any forum/noticeboard apps out there?
Before I take the plunge and write my own, has anyone here written, or know of, any web forum s/w that runs under mp2 without using compat? I know web forums are kinda evil, but I've got a genuine use for one where I need to be able to control access to it. thanks! Carl -- Report problems: 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
Re: [mp2] any forum/noticeboard apps out there?
Markus Wichitill wrote: Carl Brewer wrote: Before I take the plunge and write my own, has anyone here written, or know of, any web forum s/w that runs under mp2 without using compat? http://www.mwforum.org/ I've played with installing this today, I'm seeing the following in my error logs : [Thu Sep 02 13:52:41 2004] [error] Can't locate object method "cleanup_register" via package "APR::Pool" at /data/www/aboc/perl/mwf/MwfMain.pm line 250.\n I've the following in my apache2 config : ServerName www.aboc.com.au ServerAdmin [EMAIL PROTECTED] ServerAlias coach.bl.echidna.id.au aboc.com.au DocumentRoot /data/www/aboc/htdocs CustomLog /data/www/aboc/logs/access-log combined ErrorLog /data/www/aboc/logs/error-log # CustomLog /data/www/aboc/logs/mod_deflate deflate Alias /perl/ "/data/www/aboc/perl/" Alias /images/ "/data/www/aboc/htdocs/images/" Alias /admin/ "/data/www/aboc/admin/" Alias /mwf/ "/data/www/aboc/perl/mwf/" PerlModule Apache2 PerlSwitches -T #PerlOptions +Parent PerlRequire "/data/www/aboc/etc/startup.pl" # CB.pm needs to be monitored! PerlModule Apache::Reload PerlInitHandler Apache::Reload PerlSetVar ReloadAll Off DeflateFilterNote Input instream DeflateFilterNote Output outstream DeflateFilterNote Ratio ratio SetOutputFilter DEFLATE SetOutputFilter DEFLATE SetHandler perl-script PerlResponseHandler ModPerl::Registry PerlOptions +ParseHeaders Options +ExecCGI SetOutputFilter DEFLATE Options +ExecCGI SetHandler modperl PerlResponseHandler ModPerl::RegistryBB PerlOptions -GlobalRequest -SetupEnv -ParseHeaders and my startup.pl is : # http://perl.apache.org/docs/2.0/user/config/config.html use Apache2 (); use lib qw(/data/www/aboc/lib /data/www/aboc/perl/mwf); use ModPerl::Util (); #for CORE::GLOBAL::exit use Apache::RequestRec (); use Apache::RequestIO (); use Apache::RequestUtil (); use Apache::ServerRec (); use Apache::ServerUtil (); use Apache::Connection (); use Apache::Log (); use APR::Table (); use ModPerl::Registry (); use Apache::Const -compile => ':common'; use APR::Const -compile => ':common'; 1; Any suggestions? apache says : Server: Apache/2.0.50 (Unix) mod_perl/1.99_16 Perl/v5.8.5 which should satisfy all mwf's requirements? Carl -- Report problems: 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
Re: [mp2] any forum/noticeboard apps out there?
Markus Wichitill wrote: Carl Brewer wrote: I've played with installing this today, I'm seeing the following in my error logs : [Thu Sep 02 13:52:41 2004] [error] Can't locate object method "cleanup_register" via package "APR::Pool" at /data/www/aboc/perl/mwf/MwfMain.pm line 250.\n Add "use APR::Pool ();" to your startup.pl, I'll add the missing line to my code in the next version. Perfect, working, thankyou Marus. Carl -- Report problems: 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
Re: [mp2] Known problem with mod_perl 1.99_16 on FreeBSD 5 ?
Stas Bekman wrote: that seems to be a MakeMaker bug on some BSDs. Please see: http://rt.cpan.org/NoAuth/Bug.html?id=7417 The solution seems to be to use gmake. At least it worked for Carl on NetBSD. It works for me with gmake, yes. There's another problem I haven't had time yet to report though, but it may be relevant - it doesn't find ThreadMutex.pm at (g)make install time. I just commented the ThreadMutex line out of the makefile and it seems ok to me, but that may not be ideal. Carl -- Report problems: 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
Re: [mp2] NetBSD-1.6.2 modperl 1.99_16 httpd 2.0.51-dev make test errors
[EMAIL PROTECTED] wrote: but make install for modperl-1.99_16 fails with the following: /usr/pkg/bin/perl -Iblib/lib/Apache2 -I/usr/home/mgorb/mp-test/mod_perl-1.99_16/Apache-Test/lib -MModPerl::BuildMM -e ModPerl::BuildMM::glue_pod WrapXS/APR/ThreadMutex/ThreadMutex.pm /usr/home/mgorb/mp-test/mod_perl-1.99_16/docs/api/APR/ThreadMutex.pod blib/lib/Apache2/APR/ThreadMutex.pm glue_pod: can't find blib/lib/Apache2/APR/ThreadMutex.pm at blib/lib/Apache2/ModPerl/BuildMM.pm line 275. *** Error code 2 I see the same problem on my i386 NetBSD 1.6.2 box. -- Report problems: 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
Re: [mp2] NetBSD-1.6.2 modperl 1.99_16 httpd 2.0.51-dev make test errors
Stas Bekman wrote: Carl Brewer wrote: [EMAIL PROTECTED] wrote: but make install for modperl-1.99_16 fails with the following: /usr/pkg/bin/perl -Iblib/lib/Apache2 -I/usr/home/mgorb/mp-test/mod_perl-1.99_16/Apache-Test/lib -MModPerl::BuildMM -e ModPerl::BuildMM::glue_pod WrapXS/APR/ThreadMutex/ThreadMutex.pm /usr/home/mgorb/mp-test/mod_perl-1.99_16/docs/api/APR/ThreadMutex.pod blib/lib/Apache2/APR/ThreadMutex.pm glue_pod: can't find blib/lib/Apache2/APR/ThreadMutex.pm at blib/lib/Apache2/ModPerl/BuildMM.pm line 275. *** Error code 2 I see the same problem on my i386 NetBSD 1.6.2 box. Yes, but I've asked you to use cvs, where this has been fixed. Please confirm that it is the case. Current CVS checked out 10 mins ago : /usr/bin/perl -Iblib/lib -I/data/src/modperl-2.0/Apache-Test/lib -MModPerl::BuildMM -e ModPerl::BuildMM::glue_pod WrapXS/APR/ThreadMutex/ThreadMutex.pm /data/src/modperl-2.0/docs/api/APR/ThreadMutex.pod blib/lib/APR/ThreadMutex.pm glue_pod: can't find blib/lib/APR/ThreadMutex.pm at blib/lib/ModPerl/BuildMM.pm line 279. gmake: *** [glue_pods] Error 2 Sure enough, there's no ThreadMutex.pm in blib/lib/APR/ -- Report problems: 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
Re: [mp2] NetBSD-1.6.2 modperl 1.99_16 httpd 2.0.51-dev make test errors
Joe Orton wrote: Oh well, having found a NetBSD box to testd this myself, the NetBSD fcntl() is being economical with the truth. It doesn't return O_NONBLOCK yet the socket really is non-blocking. I'll put in the suggested apr_hints.m4 change. fun fun This may be worth bringing to the attention of the NetBSD core team, as there's a 2.0 release coming up pretty soon, it may be a bugfix worth including. -- Report problems: 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
[mp2] how far off feature-freeze is mp2?
Hello Stas et al, Just a quick question; how far off a feature-freeze is MP2? ie: if I wanted to write a moderatly serious e-commerce app in mp, is it safe to use mp2 and apreq2? thanks! Carl -- Report problems: 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
Re: [RELEASE CANDIDATE] mod_perl-1.99_17 RC1
Philippe M. Chiasson wrote: a release candidate for mod_perl 1.99_17 is now available for testing. Compiled & works like a charm on NetBSD 1.6.2/i386 with normal (BSD) make even. mp2bug can't find the httpd binaryu though, but that's pretty minor. steel1: {15} perl mp2bug -8<-- Start Bug Report 8<-- 1. Problem Description: [DESCRIBE THE PROBLEM HERE] 2. Used Components and their Configuration: *** mod_perl version 1.9917 *** using /data/src/modperl-2.0/bin/../lib/Apache/BuildConfig.pm *** Makefile.PL options: MP_APR_LIB => aprext MP_APXS=> /usr/local/apache2/bin/apxs MP_COMPAT_1X => 1 MP_GENERATE_XS => 1 MP_LIBNAME => mod_perl MP_USE_DSO => 1 *** The httpd binary was not found *** (apr|apu)-config linking info -L/usr/local/apache2/lib -lapr-0 -lm -lcrypt -lresolv -L/usr/local/apache2/lib -laprutil-0 -lexpat *** /usr/local/perl-5.8.5/bin/perl -V Summary of my perl5 (revision 5 version 8 subversion 5) configuration: Platform: osname=netbsd, osvers=1.6.2, archname=i386-netbsd uname='netbsd steel1.stealstopper.com 1.6.2 netbsd 1.6.2 (generic) #0: tue feb 10 21:53:10 utc 2004 [EMAIL PROTECTED]:autobuildnetbsd-1-6-patch002i386objautobuildnetbsd-1-6-patch002srcsysarchi386compilegeneric i386 ' config_args='' 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 ='-fno-strict-aliasing -pipe -I/usr/pkg/include', optimize='-O', cppflags='-fno-strict-aliasing -pipe -I/usr/pkg/include' ccversion='', gccversion='2.95.3 20010315 (release) (NetBSD nb3)', 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,-rpath,/usr/pkg/lib -Wl,-rpath,/usr/local/lib -L/usr/pkg/lib -L/usr/local/lib' libpth=/usr/pkg/lib /usr/local/lib /usr/lib libs=-lm -lcrypt -lutil -lc -lposix perllibs=-lm -lcrypt -lutil -lc -lposix libc=/usr/lib/libc.so, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-R/usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd/CORE' cccdlflags='-DPIC -fPIC ', lddlflags='--whole-archive -shared -L/usr/pkg/lib -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under netbsd Compiled at Aug 25 2004 14:17:37 %ENV: PERL_LWP_USE_HTTP_10="1" @INC: /usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd /usr/local/perl-5.8.5/lib/5.8.5 /usr/local/perl-5.8.5/lib/site_perl/5.8.5/i386-netbsd /usr/local/perl-5.8.5/lib/site_perl/5.8.5 /usr/local/perl-5.8.5/lib/site_perl /usr/local/perl-5.8.4 /usr/local/perl-5.8.1 . *** Packages of interest status: Apache::Request: - CGI: 3.05 LWP: 5.800 mod_perl : 1.9917 3. This is the core dump trace: (if you get a core dump): [CORE TRACE COMES HERE] This report was generated by mp2bug on Tue Oct 19 22:37:48 2004 GMT. -8<-- End Bug Report --8<-- steel1: {20} /usr/local/apache2/bin/httpd -V Server version: Apache/2.0.52 Server built: Sep 29 2004 08:31:16 Server's Module Magic Number: 20020903:9 Architecture: 32-bit Server compiled with -D APACHE_MPM_DIR="server/mpm/prefork" -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses disabled) -D APR_USE_SYSVSEM_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D HTTPD_ROOT="/usr/local/apache2" -D SUEXEC_BIN="/usr/local/apache2/bin/suexec" -D DEFAULT_PIDLOG="logs/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_LOCKFILE="logs/accept.lock" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf" -- Report problems: 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
Re: [RELEASE CANDIDATE] mod_perl-1.99_17 RC1
Philippe M. Chiasson wrote: Could you post your /data/src/modperl-2.0/bin/../lib/Apache/BuildConfig.pm in it's entirety ? steel1: {23} cat /data/src/modperl-2.0/bin/../lib/Apache/BuildConfig.pm # # /* # * *** WARNING ** # * This file generated by Apache::Build/0.01 # * Any changes made here will be lost # * *** # * 01: lib/ModPerl/Code.pm:702 # * 02: lib/Apache/Build.pm:810 # * 03: lib/Apache/Build.pm:827 # * 04: Makefile.PL:326 # * 05: Makefile.PL:92 # */ # package Apache::BuildConfig; use Apache::Build (); sub new { bless( { 'MODPERL_AR' => 'ar', 'MODPERL_OBJ_EXT' => '.o', 'ap_includedir' => '/usr/local/apache2/include', 'MODPERL_O_FILES' => 'mod_perl.o modperl_interp.o modperl_tipool.o modperl_log.o modperl_config.o modperl_cmd.o modperl_options.o modperl_callback.o modperl_handler.o modperl_gtop.o modperl_util.o modperl_io.o modperl_io_apache.o modperl_filter.o modperl_bucket.o modperl_mgv.o modperl_pcw.o modperl_global.o modperl_env.o modperl_cgi.o modperl_perl.o modperl_perl_global.o modperl_perl_pp.o modperl_sys.o modperl_module.o modperl_svptr_table.o modperl_const.o modperl_constants.o modperl_apache_compat.o modperl_error.o modperl_debug.o modperl_common_util.o modperl_common_log.o modperl_hooks.o modperl_directives.o modperl_flags.o modperl_xsinit.o modperl_exports.o', 'MP_USE_DSO' => 1, 'MODPERL_O_PIC_FILES' => 'mod_perl.lo modperl_interp.lo modperl_tipool.lo modperl_log.lo modperl_config.lo modperl_cmd.lo modperl_options.lo modperl_callback.lo modperl_handler.lo modperl_gtop.lo modperl_util.lo modperl_io.lo modperl_io_apache.lo modperl_filter.lo modperl_bucket.lo modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo modperl_perl_pp.lo modperl_sys.lo modperl_module.lo modperl_svptr_table.lo modperl_const.lo modperl_constants.lo modperl_apache_compat.lo modperl_error.lo modperl_debug.lo modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo modperl_directives.lo modperl_flags.lo modperl_xsinit.lo modperl_exports.lo', 'MP_APXS' => '/usr/local/apache2/bin/apxs', 'MODPERL_AP_INCLUDEDIR' => '/usr/local/apache2/include', 'apr_bindir' => '/usr/local/apache2/bin', 'APXS_INCLUDEDIR' => '/usr/local/apache2/include', 'MODPERL_RM' => 'rm', 'file_ldopts' => 'src/modules/perl/ldopts', 'MODPERL_CPPRUN' => 'cc -E', 'cwd' => '/data/src/modperl-2.0', 'MODPERL_RANLIB' => ':', 'MP_GENERATE_XS' => 1, 'APXS_APU_BINDIR' => '/usr/local/apache2/bin', 'MODPERL_ARCHLIBEXP' => '/usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd', 'MODPERL_LIB_DSO' => 'mod_perl.so', 'APXS_BINDIR' => '/usr/local/apache2/bin', 'MODPERL_XSUBPP' => '$(MODPERL_PERLPATH) $(MODPERL_PRIVLIBEXP)/ExtUtils/xsubpp -typemap $(MODPERL_PRIVLIBEXP)/ExtUtils/typemap -typemap /data/src/modperl-2.0/lib/typemap', 'MODPERL_PRIVLIBEXP' => '/usr/local/perl-5.8.5/lib/5.8.5', 'MODPERL_LIB_STATIC' => 'mod_perl.a', 'MODPERL_RM_F' => 'rm -f', 'MODPERL_MAKEFILE' => 'Makefile', 'MODPERL_CCOPTS' => ' -fno-strict-aliasing -pipe -I/usr/pkg/include -I/usr/local/perl-5.8.5/lib/5.8.5/i386-netbsd/CORE -DMOD_PERL -DMP_COMPAT_1X -DNETBSD', 'MODPERL_LDDLFLAGS' => '--whole-archive -shared -L/usr/pkg/lib -L/usr/local/lib', 'MODPERL_INC' => '-I/data/src/modperl-2.0/src/modules/perl -I/data/src/modperl-2.0/xs -I/usr/local/apache2/include -I /usr/local/apache2/include -I/usr/local/apache2/include', 'file_build_config' => 'lib/Apache/BuildConfig.pm', 'XS' => {}, 'httpd_version' => { '/usr/local/apache2/include' => '2.0.52' }, 'MP_COMPAT_1X' => 1, 'apr_config' => { 'HAS_FORK' => '1', 'HAS_THREADS' => '0', 'HAS_MMAP' => '1', 'HAS_RANDOM' => '1', 'HAS_DSO' => '1', 'HAS_SENDFILE' => '0', 'HAS_LARGE_FILES' => '0', 'HAS_INLINE' => '1' }, 'MODPERL_LIBNAME' => 'mod_perl', 'apr_config_path' => '/usr/local/apache2/bin/apr-config', 'MODPERL_LIB_EXT' => '.a', 'MODPERL_C_FILES' => 'mod_perl.c modperl_interp.c modperl_tipool.c modperl_log.c m
[mp2] mason and not using compat?
Hello, I'm fiddling with Mason on apache2 (NetBSD 1.6.2 & 2.0RC's) and I'd like to use mp2 in native mode, not compat. I found : http://www.masonhq.com/?ApacheModPerl2 And the hack in there I haven't yet tried, but does anyone know of any plans to make this a bit neater? Thanks Carl -- Report problems: 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
Re: [mp2] mason and not using compat? - Can't locate object method "server_root_relative"
Philippe M. Chiasson wrote: Carl Brewer wrote: I believe there is a CPAN module that makes it a bit cleaner and less hack-ish: MasonX::Apache2Handler http://search.cpan.org/dist/MasonX-Apache2Handler Thanks Philippe, I've found that now and built a NetBSD pkg for it. But, I'm having trouble using it. I really want to stay clear of mp1, but am having trouble getting this handler to work. I keep seeing this : [Tue Oct 26 13:28:53 2004] [error] [client 211.26.251.34] Can't locate object method "server_root_relative" via package "Apache::ServerRec" at /usr/pkg/lib/perl5/site_perl/5.8.4/MasonX/Apache2Handler.pm line 618.\n My setup at the moment (which is very fluid as I try things to try and fix the problem!) : DocumentRoot /home/benfab/htdocs ServerName benfab.bl.echidna.id.au ErrorLog /home/benfab/logs/error_log CustomLog /home/benfab/logs/access_log common Alias /admin/ "/home/benfab/admin/" # these four lines apply to Apache2+mod_perl2 only: {{{ PerlSetVar MasonArgsMethod CGI #PerlModule Apache2 Apache::compat PerlModule Apache2 PerlRequire "/home/benfab/lib/startup.pl" #PerlModule Apache::Reload #PerlModule Apache::Request #PerlModule Apache::Cookie #PerlInitHandler Apache::Reload #PerlSetVar ReloadAll Off #PerlSetVar _MasonUser www #PerlSetVar _MasonGroup www #PerlSetVar _MasonDefaultDocumentRoot "/home/benfab/htdocs" #RewriteEngine On #RewriteRule ^(.*)/$ $1/index.html SetHandler perl-script #PerlHandler HTML::Mason::ApacheHandler PerlResponseHandler MasonX::Apache2Handler SetHandler perl-script #PerlInitHandler Apache::Constants::NOT_FOUND #SetHandler perl-script #PerlHandler HTML::Mason::ApacheHandler SetOutputFilter DEFLATE the startup.pl script is : # http://perl.apache.org/docs/2.0/user/config/config.html use Apache2 (); # /usr/pkg/lib/perl5/site_perl/5.8.4/HTML/Mason/ApacheHandler.pm use lib qw(/home/benfab/lib /usr/pkg/lib/perl5/site_perl/5.8.4/HTML/Mason/); use ModPerl::Util (); #for CORE::GLOBAL::exit use Apache::RequestRec (); use Apache::RequestIO (); use Apache::RequestUtil (); use Apache::ServerRec (); use Apache::ServerUtil (); use Apache::Connection (); use Apache::Log (); use APR::Table (); use APR::Pool (); use ModPerl::Registry (); use Apache::Const -compile => ':common'; use APR::Const -compile => ':common'; 1; From googling around, the error message is something to do with mp2 in compat mode, which I'm specifically trying to eliminate and avoid - and as my test page is simply this : /home/benfab/htdocs/index.html <% 2+2 %> I'm not using anything that should or could call it? any suggestions? Carl -- Report problems: 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
Re: [mp2] mason and not using compat? - Can't locate object method "server_root_relative"
Randy Kobes wrote: From the mp2 Changes file, ($r|$c|$s)->server_root_relative has been removed. There is a suggested alternative, which for MasonX::Apache2Handler translates to (untested): === --- Apache2Handler.pm~ Sun Apr 11 17:02:16 2004 +++ Apache2Handler.pm Mon Oct 25 22:47:12 2004 @@ -615,7 +615,7 @@ if (exists $allowed_params->{data_dir} and not exists $params{data_dir}) { # constructs path to /mason - my $def = $defaults{data_dir} = Apache->server->server_root_relative('mason'); +my $def = $defaults{data_dir} = File::Spec->catfile(Apache::ServerUtil::server_root, 'mason'); param_error "Default data_dir (MasonDataDir) '$def' must be an absolute path" unless File::Spec->file_name_is_absolute($def); = Thanks Randy, Has this been submitted to Beau Cox by you or anyone? Carl -- Report problems: 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
Re: [mp2] mason and not using compat? - Can't locate object method "server_root_relative"
Randy Kobes wrote: From the mp2 Changes file, ($r|$c|$s)->server_root_relative has been removed. There is a suggested alternative, which for MasonX::Apache2Handler translates to (untested): === --- Apache2Handler.pm~ Sun Apr 11 17:02:16 2004 +++ Apache2Handler.pm Mon Oct 25 22:47:12 2004 @@ -615,7 +615,7 @@ if (exists $allowed_params->{data_dir} and not exists $params{data_dir}) { # constructs path to /mason - my $def = $defaults{data_dir} = Apache->server->server_root_relative('mason'); +my $def = $defaults{data_dir} = File::Spec->catfile(Apache::ServerUtil::server_root, 'mason'); param_error "Default data_dir (MasonDataDir) '$def' must be an absolute path" unless File::Spec->file_name_is_absolute($def); = That works, btw. Thankyou. Now if Beau can update the Apache2Handler, it'll all be good! Carl -- Report problems: 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
[mp2] can't locate object method "upload" via package "Apache::RequestRec"
Forgive my poor perl and understanding of how this works! I'm trying to grab images from a form, using libapreq2, and I'm seeing this error : [Sun Nov 07 10:52:34 2004] [error] Can't locate object method "upload" via package "Apache::RequestRec" at /home/benfab/lib/BF.pm line 135.\n I've a library I'm writing, BF.pm, that has the following two subroutines in it : sub hash_post { # returns a hash of all the POST values use Apache::Request; use Apache::Upload; my ($r) = shift; my %rethash = {}; my $req = Apache::Request->new($r); my @param_names = $req->param; foreach my $value (@param_names) { $rethash{$value} = $req->param($value); } return %rethash; } sub get_uploaded_image { my ($name, $max_size, $r) = @_; use Apache::Upload; my $upload = $r->upload($name); print STDERR $upload->filename(); } They're pretty crude, but hash_post does what I need (any suggestions for improvemend gladly accepted!). I'm working on the get_uploaded_image() at the moment (as you can see, it doesn't do anything yet!) I've declared $r in my calling script, and I'm not sure if I need to declare it again in the subroutines? The calling script looks like this : my $r = Apache->request; $r->content_type("text/html"); use lib qw(/home/benfab/lib); use BF; use Template; use Data::Dumper; use strict; . . . my %posted_data = BF::hash_post($r); my $upload = BF::get_uploaded_image("small_image", $BF::small_image_size, $r); If I change my subroutine to this : sub get_uploaded_image { my ($name, $max_size, $r) = @_; use Apache::Upload; my $req = Apache::Request->new($r); my $upload = $req->upload($name); print STDERR $upload->filename(); } It starts to work, but I don't understand why I need to declare $req again here? I want to keep my form parsing image stuff seperate, as not all my pages will have images to load, am I doing this the 'best' way? thanks! Carl -- Report problems: 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
Re: [mp2] can't locate object method "upload" via package "Apache::RequestRec"
Tom Schindl wrote: Carl Brewer wrote: sub get_uploaded_image { my ($name, $max_size, $r) = @_; use Apache::Upload; my $req = Apache::Request->new($r); my $upload = $req->upload($name); I've got that in my subroutine and it works, but I'm concerned that I'm dipping into the buckets too much? Is it safe to call on $r more than once per form submission? I'm already runnign the new request() in a subroutine I call before I call the Upload one. thanks again, Carl -- Report problems: 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
[mp2] modperl not reloading files when changed
Hello, I've got a couple of files, a script and a library, and I'm not sure of what I'm doing wrong in terms of telling modperl to watch them for changes. I have the following in httpd.conf : for my virtual host : PerlModule Apache2 PerlRequire "/home/benfab/lib/startup.pl" PerlModule Apache::Reload PerlModule Apache::Request PerlModule Apache::Cookie PerlInitHandler Apache::Reload # PerlSetVar ReloadAll Off SetOutputFilter DEFLATE #SetHandler perl-script SetHandler modperl PerlResponseHandler ModPerl::Registry PerlOptions +ParseHeaders PerlOptions +GlobalRequest Options +ExecCGI startup.pl has : # http://perl.apache.org/docs/2.0/user/config/config.html use Apache2 (); use lib qw(/home/benfab/lib); use ModPerl::Util (); #for CORE::GLOBAL::exit use Apache::RequestRec (); use Apache::RequestIO (); use Apache::RequestUtil (); use Apache::ServerRec (); use Apache::ServerUtil (); use Apache::Connection (); use Apache::Log (); use APR::Table (); use APR::Pool (); use ModPerl::Registry (); use Apache::Const -compile => ':common'; use APR::Const -compile => ':common'; 1; Do I need to put something in my script and library to tell Apache/mod_perl to watch them? This is in my library : # tell Apache we're volatile, watch for changes ... use Apache::Reload; Does that also need to be in my calling script for it to be noticed? thanks! Carl -- Report problems: 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
Re: mod_perl 2 & Sessions
Perrin Harkins wrote: On Thu, 2004-10-28 at 11:53, Geoffrey Young wrote: I'm sure others can point out additional tools as well. Apache::SessionManager is a good place for newbies to start with sessions under mod_perl: http://search.cpan.org/~enrys/Apache-SessionManager-1.02/ Further to that, "Session" may be worth a look : http://search.cpan.org/~rsoliv/Session-0.01/Session.pm -- Report problems: 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
Re: support for Apache 2.4
On 16/02/2014 1:16 PM, Fred Moyer wrote: After a quick chat with Jie, I've updated perl.apache.org and removed the links to the snapshots directory which was broken. Apache.org is no longer supporting snapshot releases, which is why they are no longer available. If you have trouble viewing the updated site, please try 'shift-reload' so that your browser doesn't serve up a cached page. Having just downloaded this latest SVN repo, a grep for "2.4" in the root dir shows a couple of changes, but no explicit mention of 2.4 support. Before I try it, does it actually support 2.4 yet? thank you Carl
Re: Perl 5.8.1 is out
Stas Bekman wrote: If you are eager to start testing you can start doing so right now with the latest cvs. I'm doing some last testing and will post the 1.99_10 release candidate in about 10 hours. steel1: {8} perl mp2bug -8<-- Start Bug Report 8<-- 1. Problem Description: no problems at compile time, the usual make test IPv6 problems though seems fine operationally though. 2. Used Components and their Configuration: *** mod_perl version 1.9910 *** using /data/src/modperl-2.0/bin/../lib/Apache/BuildConfig.pm *** Makefile.PL options: MP_APXS=> /usr/local/apache2/bin/apxs MP_COMPAT_1X => 1 MP_GENERATE_XS => 1 MP_LIBNAME => mod_perl MP_USE_DSO => 1 MP_USE_STATIC => 1 *** /usr/local/apache2/bin/httpd -V Server version: Apache/2.0.47 Server built: Jul 10 2003 10:10:41 Server's Module Magic Number: 20020903:4 Architecture: 32-bit Server compiled with -D APACHE_MPM_DIR="server/mpm/prefork" -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses disabled) -D APR_USE_SYSVSEM_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D HTTPD_ROOT="/usr/local/apache2" -D SUEXEC_BIN="/usr/local/apache2/bin/suexec" -D DEFAULT_PIDLOG="logs/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_LOCKFILE="logs/accept.lock" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf" *** /usr/local/perl-5.8.0/bin/perl -V Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration: Platform: osname=netbsd, osvers=1.6.1, archname=i386-netbsd uname='netbsd steel1.stealstopper.com 1.6.1 netbsd 1.6.1 (generic) #0: tue apr 8 12:05:52 utc 2003 [EMAIL PROTECTED]:autobuildnetbsd-1-6i386objautobuildnetbsd-1-6srcsysarchi386compilegeneric i386 ' config_args='' 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 ='-fno-strict-aliasing', optimize='-O', cppflags='-fno-strict-aliasing' ccversion='', gccversion='2.95.3 20010315 (release) (NetBSD nb3)', 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,-rpath,/usr/pkg/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib' libpth=/usr/local/lib /usr/lib libs=-lm -lc -lposix -lcrypt -lutil perllibs=-lm -lc -lposix -lcrypt -lutil libc=/usr/lib/libc.so, so=so, useshrplib=true, libperl=libperl.so gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-whole-archive -lgcc -Wl,-no-whole-archive -Wl,-E -Wl,-R/usr/local/perl-5.8.0/lib/5.8.0/i386-netbsd/CORE' cccdlflags='-DPIC -fPIC ', lddlflags='--whole-archive -shared -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under netbsd Compiled at Jun 4 2003 20:01:13 %ENV: PERL_LWP_USE_HTTP_10="1" @INC: /usr/local/perl-5.8.0/lib/5.8.0/i386-netbsd /usr/local/perl-5.8.0/lib/5.8.0 /usr/local/perl-5.8.0/lib/site_perl/5.8.0/i386-netbsd /usr/local/perl-5.8.0/lib/site_perl/5.8.0 /usr/local/perl-5.8.0/lib/site_perl . 3. This is the core dump trace: (if you get a core dump): [CORE TRACE COMES HERE] This report was generated by mp2bug on Fri Sep 26 08:52:44 2003 GMT. -8<-- End Bug Report --8<-- __ Stas BekmanJAm_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
Re: Perl 5.8.1 is out
Carl Brewer wrote: > report from NetBSD 1.6.1 *doh* Should have gone to dev .. Mea Culpa Carl
Re: Perl 5.8.1 is out
Stas Bekman wrote: However you can try the following: perl Makefile.PL ... make t/TEST -conf perl -pi -e 's|Listen\s+(\d+)|Listen YOURHOSTNAME:$1|' t/conf/httpd.conf t/TEST cd ModPerl-Registry t/TEST -conf perl -pi -e 's|Listen\s+(\d+)|Listen YOURHOSTNAME:$1|' t/conf/httpd.conf t/TEST replace YOURHOSTNAME with your hostname ;) may be localhost will do, I haven't played on Ipv6 system yet. Localhost didn't work :) cheers Carl
Re: Perl 5.8.1 is out
Stas Bekman wrote: So what hostname do you normally use? Have you tried that? Philippe has reported that this change has worked for him. http://marc.theaimsgroup.com/?l=apache-modperl-dev&m=105514290024419&w=2 I used this patch just now on a current CVS, and still see the same problems (or similar). Stas, do you want to have a play on the box to see if you can figure it out? Carl
mp2: brief success story
Just for the archives, I'm using mp2 (usually fairly recent CVS pulls) in production on a number of sites I'm hosting on a NetBSD server. These include my cycling coaching website : www.aboc.com.au which uses Template::Toolkit, mp2, my own authentication stuff (not a handler, yet :) ) and MySQL as a backend. I also used it for db-tour.bl.echidna.id.au, also using Template::Toolkit but with no database stuff. It's all pretty low traffic, but I've not had a crash in 4 months, and that's pretty good for development stuff. Thanks heaps to Stas and the mp community for all your work with mp2 and answering my clueless questions :) Carl
[OT] checking for legal chars in a filename passed in by upload params?
Sorry for the OT post, but I figure this is a good place to ask, as I'm sure lots of you have solved this one before.(and this is using CGI.pm too :( ) I'm writing a small app that takes an uploaded file from a form, pops it into an obfuscated directory, and then mails out a "here it is" page to an intended recipient of the uploaded file. It's a crudly automated document server of sorts I guess. I'm not too worried about the upload filenames, but the defensive programmer in me somewhere says if I'm going to write this, I should prevent the uploadee from doing bad things. The uploadee *should* be a trusted user, but may not be... I don't mind a DoS sort of thing, but I don't want them being able to scribble outside the upload directory. So, can anyone suggest what I should do to the passed filename parameter to make sure it's not "../../../etc/passwd" or somesuch? A simple regex to catch .'s isn't really enough, as I know that can get curcumvented pretty easily these days, and I don't want to maintain it if the work's been done elsewhere already. my $uploaded_filename = param('uploaded_file'); my $tmpdir = File::Temp::tempdir( "foo_XX", DIR => $files_dir ); $tmpdir =~ /\/(foo_\w+)$/; my $shortdir = $1; print STDERR "$tmpdir\n"; copy($fh, $tmpdir."/".$uploaded_filename); is the thing I want to make safe. I'm already doing this to it later : my $safe_uploaded_filename = uri_escape($uploaded_filename); which is from URI::Escape, but I don't think that will save me :) I know I need to check the return codes from copy etc. Any belts with a cluestick? I'm not really sure what to google for here. thanks Carl
[mp2] porting older mp2 code to 2.0.0 - I'm stuck with params from apreq!
I'm porting my code to mp2.0.0 from 1.99.older (16?) - so far mostly ok, but I'm stuck on a conversion with apreq - I've now got libapreq2-2.05-dev installed (the distributed version, not sucked from svn/cvs). I was using the following code to grab input : sub hash_post { # returns a hash of all the POST values use Apache::Request; my ($r) = shift; my %rethash = {}; my $req = Apache::Request->new($r); my @param_names = $req->param; foreach my $value (@param_names) { $rethash{$value} = $req->param($value); } return %rethash; } It's crude, but it worked with mp1.99 and libapreq 2.04-dev. I've been floundering around with libapreq 2.05-dev tryin to get at the params, but I don't really know what I'm doing - and I haven't been able to find any simple examples in the apreq code - save for some pretty hairy stuff in glue/perl/t/apreq/cgi.t, but isn't apreq supposed to hide all that bucket brigade stuff? I just want the params from my POST and GET requests! Can anyone suggest what simple change I need to make to the above to get it working with mp2.0.0/libapreq-2.05-dev? thanks! Carl
Re: [mp2] porting older mp2 code to 2.0.0 - I'm stuck with params from apreq!
Carl Brewer wrote: If I'd looked in : docs/html/group__apreq__xs__request.html I'd have seen that all I needed to do was to change use Apache::Request; to use Apache2::Request; and my $req = Apache::Request->new($r); to my $req = Apache2::Request->new($r); and it would have just worked! Mea Culpa Carl
a mp/perl equivalent to sendmail.php?
I have a client who wants to send email from a flash script (do you call flash stuff scripts?), and he has asked me to install sendmail.php for him. I don't want to! Can anyone here recommend a modperl (or just plain perl) equivalent that I can lock down so it is less likely to be used as a spam delivery agent? Thanks! Carl
tracking a coredump problem
Hello, I'm running apache 2.2.11 with mp2.0.4 and libapreq 2.0.8, or at least, I think I am ... it's on CentOS/RHEL 5.2 We've been having some intermittent segfaults which are proving difficult to track down, and so I seek the help of the list. At startup, httpd reports as follows : Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8b mod_apreq2-20051231/2.6.0 mod_perl/2.0.4 Perl/v5.8.8 configured I'm wondering where it's getting mod-apreq2-20051231/2.6.0 from? I built libapreq2 from source and I think I got it right? : $ ./configure --with-apr-config=/usr/local/apache/2.2.11/bin/apr-1-config --prefix=/usr/local/apache/2.2.11 --enable-perl -glue --with-apache2-apxs=/usr/local/apache/2.2.11/bin/apxs and mp2 was built by hand as well, but I'm not sure how to report on the build arguments (no config.[log|status] file) I've used strace to follow all the open()'s when starting httpd and it seems to be looking in the right places : grep libapr trace open("/usr/local/apache/2.2.11/lib/libaprutil-1.so.0", O_RDONLY) = 3 open("/usr/local/apache/2.2.11/lib/libapr-1.so.0", O_RDONLY) = 3 open("/usr/local/apache/2.2.11/lib/libapreq2.so.3", O_RDONLY) = 4 open("/usr/local/apache/2.2.11/lib/libapreq2.so.3", O_RDONLY) = 8 grep Apache2 trace open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/PerlSections.pm", O_RDONLY|O_LARGEFILE) = 7 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/CmdParms.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/XSLoader.pm", O_RDONLY|O_LARGEFILE) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/CmdParms/CmdParms.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Directive.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Directive/Directive.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/ServerRec.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Log.pm", O_RDONLY|O_LARGEFILE) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Log/Log.so", O_RDONLY) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/ServerRec/ServerRec.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/ServerUtil.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/ServerUtil/ServerUtil.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Const.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Const/Const.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Module.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Module/Module.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/RequestUtil.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/RequestUtil/RequestUtil.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Cookie.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/APR/Request/Apache2.pm", O_RDONLY|O_LARGEFILE) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/APR/Request/Apache2/Apache2.so", O_RDONLY) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/RequestRec.pm", O_RDONLY|O_LARGEFILE) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/RequestRec/RequestRec.so", O_RDONLY) = 9 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Request.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Util.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Util/Util.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/URI.pm", O_RDONLY|O_LARGEFILE) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/URI/URI.so", O_RDONLY) = 8 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Response.pm", O_RDONLY|O_LARGEFILE) = 11 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Response/Response.so", O_RDONLY) = 11 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/RequestIO.pm", O_RDONLY|O_LARGEFILE) = 11 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/RequestIO/RequestIO.so", O_RDONLY) = 11 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Apache2/Access.pm", O_RDONLY|O_LARGEFILE) = 11 open("/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/Access/Access.so"
Re: tracking a coredump problem
Following up on this, I'm still stuck, but maybe someone here can help with a debugging step? I'm trying to get httpd to dump cores, as we're seeing this a lot : [Sun Jan 25 18:14:17 2009] [notice] child pid 20822 exit signal Segmentation fault (11) and I figure a core might just help. So, in httpd-perl's config : CoreDumpDirectory /var/cores and /var/cores is 777 And in the (RHEL/CentOS format) init.d script start() { echo -n $"Starting $prog: " ulimit -S -c unlimited >/dev/null 2>&1 LANG=$HTTPD_LANG daemon $httpd $OPTIONS -f $conf RETVAL=$? echo ulimit -c [ $RETVAL = 0 ] && touch ${lockfile} return $RETVAL } I think I got just about everything needed to get a coredump, but nothing shows up in /var/cores, despite many segfaults in the logs. Anything I've missed? Thankyou Carl
Re: tracking a coredump problem
Philippe M. Chiasson wrote: Selinux enabled ? Good question, I don't think so, but will double-check.
Re: tracking a coredump problem
Carl Brewer wrote: Philippe M. Chiasson wrote: Selinux enabled ? Good question, I don't think so, but will double-check. Nope, selinux is disabled on /etc/selinux/config
Re: tracking a coredump problem
Adam Prime wrote: Carl Brewer wrote: And in the (RHEL/CentOS format) init.d script start() { echo -n $"Starting $prog: " ulimit -S -c unlimited >/dev/null 2>&1 LANG=$HTTPD_LANG daemon $httpd $OPTIONS -f $conf RETVAL=$? echo ulimit -c [ $RETVAL = 0 ] && touch ${lockfile} return $RETVAL } Why are there two ulimit lines in here? Does the second one undo what the first one did, causing cores to not get generated? The second one is a debugging thing, it just prints to STDOUT what the ulimit has been set to. When I needed to get cores generated I did exactly what it said here: http://httpd.apache.org/dev/debugging.html#crashes namely, that I ran ulimit in the shell, then in that same shell started apache with apachectl. I was able to generate cores that way. Sure, but I'm not sure why doing that in a startup script doesn't do the same thing? Adam
Re: tracking a coredump problem
eric.b...@barclayscapital.com wrote: Carl, I may have missed it, but did you say at what point you were seeing the segfault? I assume you mean at startup, but can you confirm? Not at startup, it happens after 'a while'. It's very hard to track, and I am stumped at trying to get a core file to see where it's really breaking. My init script (CentOS 5.2): start() { echo -n $"Starting $prog: " ulimit -S -c unlimited >/dev/null 2>&1 LANG=$HTTPD_LANG daemon $httpd $OPTIONS -f $conf RETVAL=$? echo ulimit -c [ $RETVAL = 0 ] && touch ${lockfile} return $RETVAL } I must be missing something, I get segfaults but no core dumps and I've finally got to do something about it.
Re: tracking a coredump problem
I've got some coredumps now, after starting apache mp with apachectl not the init script. gdb shows this : Core was generated by `/usr/local/apache/2.2.11/bin/httpd -f /etc/httpd/conf/httpd-2.2.11-perl.conf -k'. Program terminated with signal 11, Segmentation fault. #0 0x0030a039 in Perl_pp_rv2cv () from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/libperl.so bt full shows a load of info but nothing I can immediately identify as a failure. This is its output : #0 0x0030a039 in Perl_pp_rv2cv () from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/libperl.so No symbol table info available. #1 0x002dd88f in Perl_runops_standard () from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/libperl.so No symbol table info available. #2 0x0027dffe in Perl_magicname () from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/libperl.so No symbol table info available. #3 0x00282806 in Perl_call_sv () from /usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/libperl.so No symbol table info available. #4 0x00604a7f in modperl_callback (my_perl=0x8eac5f8, handler=0x89b93b8, p=0x95efc50, r=0x95efc90, s=0x94d9ec8, args=0x9688e94) at modperl_callback.c:101 items = cv = sp = (SV **) 0x970ac98 status = 0 #5 0x0060517a in modperl_callback_run_handlers (idx=6, type=4, r=0x95efc90, c=0x0, s=0x94d9ec8, pconf=0x0, plog=0x0, ptemp=0x0, run_mode=MP_HOOK_RUN_FIRST) at modperl_callback.c:262 my_perl = (PerlInterpreter *) 0x8eac5f8 interp = (modperl_interp_t *) 0x931fe18 scfg = (modperl_config_srv_t *) 0x94dc5e0 dcfg = (modperl_config_dir_t *) 0x94dd4f0 rcfg = (modperl_config_req_t *) 0x95f0a28 handlers = (modperl_handler_t **) 0x89b93e8 p = (apr_pool_t *) 0x95efc50 av = (MpAV *) 0x89b93d0 avp = i = 0 status = 0 desc = 0x61ccd3 "PerlResponseHandler" av_args = (AV *) 0x9688e94 #6 0x0060580a in modperl_callback_per_dir (idx=6, r=0x95efc90, run_mode=MP_HOOK_RUN_FIRST) at modperl_callback.c:369 No locals. #7 0x005fe79f in modperl_response_handler_run (r=0x95efc90, finish=0) at mod_perl.c:1000 retval = #8 0x005fe96b in modperl_response_handler_cgi (r=0x95efc90) at mod_perl.c:1100 dcfg = (modperl_config_dir_t *) 0x94dd4f0 h_stdin = (GV *) 0x9688f18 h_stdout = (GV *) 0x9689134 retval = -1 rc = rcfg = (modperl_config_req_t *) 0x95f0a28 my_perl = (PerlInterpreter *) 0x8eac5f8 interp = (modperl_interp_t *) 0x931fe18 #9 0x080821e9 in ap_run_handler () No symbol table info available. #10 0x08082933 in ap_invoke_handler () No symbol table info available. #11 0x080e0153 in ap_process_request () No symbol table info available. #12 0x080dcb8f in ap_process_http_connection () No symbol table info available. #13 0x0808a873 in ap_run_process_connection () No symbol table info available. #14 0x0808ac86 in ap_process_connection () No symbol table info available. #15 0x08102a73 in child_main () No symbol table info available. #16 0x08102c5e in make_child () No symbol table info available. #17 0x08102eaf in perform_idle_server_maintenance () No symbol table info available. #18 0x081033d9 in ap_mpm_run () No symbol table info available. #19 0x0806b61c in main () No symbol table info available. Is there anything there that helps find where the problem is?