Author |
|
tomkk
Joined: 14 Jan 2006 Posts: 3
|
Posted: Fri 30 Jun '06 18:00 Post subject: Apache2.2 & mod_perl |
|
|
I'm finally getting around to cutting over from Apache 2.0 to 2.2.2 and am having fits getting mod_perl working. I've installed Perl 5.8.8.817 and that seems to work OK. I've gone through the mod_perl-2.0.3-588-w32.zip mod_perl installation procedure from the site here.
The messages I get during the installation seem normal enough: at startup I get "Install 'mod_perl' v 2.0.3-dev in ActivePerl 5.8.3.809" message and at completion I get "Successfully installed mod_perl v2.0.3-dev in ActivePerl 5.8.3.809" although I don't understand the version numbers shown here considering that I have Perl 5.8.8.817 installed.
I've confirmed the Perl version is 5.8.8.817 and Apache 2.2.2.
I've set up httpd.conf as suggested with LoadFile "C:/Perl/bin/perl58.dll" and LoadModule perl_module modules/mod_perl.so.
The problem is that I get a "httpd.exe: Syntax error on line 75 of C:/Apache22/conf/httpdTest.conf: Cannot load C:/Apache22/modules/mod_perl.so into server: The specified module could not be found." error.
I've run out of things to try. Any suggestions?
Thanks in advance for any help. |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
|
Back to top |
|
tomkk
Joined: 14 Jan 2006 Posts: 3
|
Posted: Fri 30 Jun '06 19:29 Post subject: |
|
|
Thx for the reply. No, I hadn't previously installed it but I did after your suggestion.
Unfortunately, nothing changed. Any other ideas? |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
Posted: Fri 30 Jun '06 19:33 Post subject: |
|
|
Did you copied perl.exe.manifest in the .zip to your /perl/bin folder ?
Do you use the Apache 2.2 downloaded from ASF or from here ?
Steffen |
|
Back to top |
|
tomkk
Joined: 14 Jan 2006 Posts: 3
|
Posted: Sat 01 Jul '06 1:10 Post subject: |
|
|
Should have mentioned that before - I did copy perl.exe.manifest zip to my /perl/bin folder as part of the original installation.
I used ASF's msi install package to install 2.2.
OK, I got and reinstalled Apache from httpd-2.2.2-win32-x86-ssl.zip and that seems to have done the trick.
Thanks so much for your help. |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
Posted: Sat 01 Jul '06 1:17 Post subject: |
|
|
Thanks for the feedback.
The issue you had was that you used the .msi. Then you need also a httpd.exe.manifest file.
I updated the instructions in the zip.
Steffen |
|
Back to top |
|
mmazerolle
Joined: 07 May 2008 Posts: 5
|
Posted: Wed 07 May '08 22:45 Post subject: |
|
|
Hi,
I reviewed this conversation since I had exactly the same problems that tomkk had encountered. I had made all the same steps he had done :
- Did not download and install C++ Redistributable (I did now)
- Started from MSI installation i got at apache.org version 2.2.8 (Download the zip file from the lounge and copied all files except httpd.conf over my previous installation)
Still Apache wont start. The mod_perl.so file is there and my perl installation is also current (v5.8.8 built for MSWin32-x86-multi-thread) or at least acceptable.
Running the httpd.exe from the command-line i get :
C:\Program Files\Apache Software Foundation\Apache2.2\bin>httpd -e debug -w
[Wed May 07 16:42:18 2008] [debug] mod_so.c(328): loaded file C:/Perl/bin/perl58
.dll
httpd: Syntax error on line 61 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf: Cannot load C:/Program Files/Apache Software Foundation/Apache2.2/modules/mod_perl.so into server: The specified module could not be found.
Any other suggestion on what I could be doing wrong ? |
|
Back to top |
|
tdonovan Moderator
Joined: 17 Dec 2005 Posts: 611 Location: Milford, MA, USA
|
Posted: Thu 08 May '08 2:41 Post subject: |
|
|
The problem appears to be that something mod_perl.so needs isn't present.
A couple of ideas: Code: | LoadFile C:/Perl/bin/perl58.dll
LoadModule perl_module modules/mod_perl.so | -tom- |
|
Back to top |
|
mmazerolle
Joined: 07 May 2008 Posts: 5
|
Posted: Thu 08 May '08 5:20 Post subject: |
|
|
Thanks for quick reply.
- Installed 2005 SP1 Redistributable Pakage.
Try starting httpd manually (httpd -e debug -w) :
C:\Program Files\Apache Software Foundation\Apache2.2\bin>httpd -e debug -w
[Wed May 07 23:10:57 2008] [debug] mod_so.c(328): loaded file C:/Perl/bin/perl58.dll
httpd: Syntax error on line 61 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf: Cannot load C:/Program Files/Apache Software Foundation/Apache2.2/modules/mod_perl.so into server: The specified module could not be found.
- Installed 2008 Redistributable Package
Same result.
I already had the "LoadFile" command and the "LoadModule" command in my httpd.conf file and the DLL seams to load correctly according to the log of the httpd command.
Any other ideas ?
Marc |
|
Back to top |
|
mmazerolle
Joined: 07 May 2008 Posts: 5
|
Posted: Thu 08 May '08 16:20 Post subject: |
|
|
Complementary info that could help :
C:\Program Files\Apache Software Foundation\Apache2.2\bin>httpd -V
Server version: Apache/2.2.8 (Win32)
Server built: Mar 8 2008 14:15:40
Server's Module Magic Number: 20051115:11
Server loaded: APR 1.2.12, APR-Util 1.2.12
Compiled using: APR 1.2.12, APR-Util 1.2.12
Architecture: 32-bit
Server MPM: WinNT
threaded: yes (fixed thread count)
forked: no
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/winnt"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/apache"
-D SUEXEC_BIN="/apache/bin/suexec"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error.log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
C:\Program Files\Apache Software Foundation\Apache2.2>perl -V
Summary of my perl5 (revision 5 version 8 subversion configuration:
Platform:
osname=MSWin32, osvers=5.00, archname=MSWin32-x86-multi-thread
uname=''
config_args='undef'
hint=recommended, useposix=true, d_sigaction=undef
usethreads=define use5005threads=undef useithreads=define usemultiplicity=de
fine
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cl', ccflags ='-nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -
DNO_STRICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DPRIVLIB_LAST_I
N_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_REA
DFIX',
optimize='-MD -Zi -DNDEBUG -O1',
cppflags='-DWIN32'
ccversion='12.00.8804', gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=8
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='__int64', lseeksi
ze=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='link', ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:
\Perl\lib\CORE" -machine:x86'
libpth=\lib
libs= oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32
.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_
32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib msvcrt.lib
perllibs= oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comd
lg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib
ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib msvcrt.lib
libc=msvcrt.lib, so=dll, useshrplib=true, libperl=perl58.lib
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -
libpath:"C:\Perl\lib\CORE" -machine:x86'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
PERL_IMPLICIT_SYS PERL_MALLOC_WRAP
PL_OP_SLAB_ALLOC USE_ITHREADS USE_LARGE_FILES
USE_PERLIO USE_SITECUSTOMIZE
Locally applied patches:
ActivePerl Build 822 [280952]
Iin_load_module moved for compatibility with build 806
PerlEx support in CGI::Carp
Less verbose ExtUtils::Install and Pod::Find
Patch for CAN-2005-0448 from Debian with modifications
Rearrange @INC so that 'site' is searched before 'perl'
Partly reverted 24733 to preserve binary compatibility
MAINT31223 plus additional changes
31490 Problem bootstraping Win32CORE
31324 Fix DynaLoader::dl_findfile() to locate .so files again
31214 Win32::GetLastError fails when first called
31211 Restore Windows NT support
31188 Problem killing a pseudo-forked child on Win32
29732 ANSIfy the PATH environment variable on Windows
27527,29868 win32_async_check() can loop indefinitely
26970 Make Passive mode the default for Net::FTP
26379 Fix alarm() for Windows 2003
24699 ICMP_UNREACHABLE handling in Net::Ping
Built under MSWin32
Compiled at Jul 31 2007 19:34:48
%ENV:
PERL5LIB="C:\Perl\lib"
@INC:
C:\Perl\lib
C:/Perl/site/lib
C:/Perl/lib
. |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
Posted: Thu 08 May '08 19:16 Post subject: |
|
|
You said in the start post above: I've gone through the mod_perl-2.0.3-588-w32.zip mod_perl installation procedure from the site here.
Since a long time it is removed from the downloadpage here. I had it temp placed, because at that time no official mod_perl was avialable.
For Perl 5.8 goto http://theoryx5.uwinnipeg.ca/ppms/
For Perl 5.10 goto http://cpan.uwinnipeg.ca/PPMPackages/10xx/
Should work.
Steffen |
|
Back to top |
|
mmazerolle
Joined: 07 May 2008 Posts: 5
|
Posted: Thu 08 May '08 20:22 Post subject: |
|
|
Thanks for your patience Steffen,
Following instructions given on the website given in your reference for Perl 5.8 I reinstalled mod_perl.so once more with the following command :
>ppm install http://theoryx5.uwinnipeg.ca/ppms/mod_perl-2.0.ppd
Downloading mod_perl-2.0-2.0.3...done
Unpacking mod_perl-2.0-2.0.3...done
Generating HTML for mod_perl-2.0-2.0.3...done
Updating files in site area...done
Downloading mod_perl-2.0-2.0.3 install script...done
Running mod_perl-2.0-2.0.3 install script...
The Apache module mod_perl.so is needed to complete the installation,
and should be placed in your Apache2 modules directory. I will
now fetch and install this for you.
Fetching http://theoryx5.uwinnipeg.ca/ppms/x86/mod_perl-2.0.so ... done!
Where should mod_perl.so be placed? [C:/Apache2/modules] C:\Program Files\Apache
Software Foundation\Apache2.2\modules
C:/PROGRA~1/APACHE~1/Apache2.2/modules/mod_perl.so exists. Overwrite? [no] yes
mod_perl.so has been successfully installed to C:/PROGRA~1/APACHE~1/Apache2.2/modules
done
461 files unchanged
4 files updated
Tried to start Apache from command-line again, same error.
Is there a way to get a fresh copy of averything that works together and reinstall. This is a clean machine and i can do whatever i want on it. If its a flaky version combination i have i can change them.
Marc |
|
Back to top |
|
deviurg
Joined: 08 May 2008 Posts: 1
|
Posted: Thu 08 May '08 21:59 Post subject: just bumped into the same problem |
|
|
2 mazzerole:
U have to remove mod_perl module via ppm and then install it again with the different url
ppm install http://theoryx5.uwinnipeg.ca/ppms/mod_perl.ppd
it works for me!
best regards,
/grig |
|
Back to top |
|
mmazerolle
Joined: 07 May 2008 Posts: 5
|
Posted: Fri 09 May '08 15:53 Post subject: |
|
|
True. I did not uninstall before installing the last time.
Trying....
Uninstalled package mod_perl-2.0.3 interactively using PPM GUI (i have to say i dont know the command-line arguments)
Reinstalled using command proposed
C:\>ppm install http://theoryx5.uwinnipeg.ca/ppms/mod_perl.ppd
Downloading mod_perl-2.0.3...done
Unpacking mod_perl-2.0.3...done
Generating HTML for mod_perl-2.0.3...done
Updating files in site area...done
Downloading mod_perl-2.0.3 install script...done
Running mod_perl-2.0.3 install script...
The Apache2 module mod_perl.so is needed to complete the installation,
and should be placed in your Apache2 modules directory. I will
now fetch and install this for you.
Fetching http://theoryx5.uwinnipeg.ca/ppms/x86/mod_perl.so ... done!
Where should mod_perl.so be placed? [D:/Apache2/modules] C:/PROGRA~1/APACHE~1/Ap
ache2.2/modules
mod_perl.so has been successfully installed to C:/PROGRA~1/APACHE~1/Apache2.2/mo
dules.
To enable mod_perl, put in the directives
LoadFile "C:/Path/to/Perl/bin/perl58.dll"
LoadModule perl_module modules/mod_perl.so
in httpd.conf. For more information, visit
http://perl.apache.org/
and especially see
http://perl.apache.org/docs/2.0/rename.html
done
465 files installed
C:\>
Start the Apache server.... Wououuuuuuuuuuuuuuuuuuuuuuuu it works.
Thanks to everyone who contributed to this thread.
Many thanks.
Marc
P.S.: Don't forget your mother this week-end |
|
Back to top |
|