Dear Mod_Perl mailing list,

We installed Apache 1.3.12 on our Sun Solaris 2.6 with gcc 2.95.2
compiler. Then we installed mod_perl 1.24 as a DSO to the Apache server. 
When we were installing mo_perl with apxs, everything looks fine. However, 
httpd.conf file seems to be untouched. We added the following lines to
the httpd.conf:

LoadModule perl_module        libexec/libperl.so
AddModule mod_perl.c

<IfModule mod_perl.c>

Alias /perl/ /site/subsys/www/apache_1.3.12/cgi-bin/ 
<Location /perl/>
      SetHandler perl-script
      PerlHandler Apache::Registry
      Options ExecCGI
      allow from all
      PerlSendHeader On </Location> 
</IfModule>

Then the apache service could not start correctly by either causing core
dump or complaining about the "PerlHandler" directive.

>From what I read in mod_perl FAQ website, using apxs to install mod_perl
as a DSO is not that reliable. But is there anyway, we can manually
configure mod_perl as a DSO correctly? As far as I can see, all the perl
modules are there in the perl installation tree and libperl.so presents in
the Apache libexec directory already.

I also attach our mod_perl installation note for your reference. I hope
installing mod_perl statically will not be our only solution to the
problem.

Thank you very much.
Ziying Sherwin

-----------------------------------------------------------------------

LOCAL INSTALLATION NOTES

Package Name: mod_perl
Version: 1.24
Release Date: 16 May 2000
Origin: http://perl.apache.org/dist/, http://perl.apache.org/guide/install.html
Author: Doug MacEachern ([EMAIL PROTECTED]) et al.
Language: C
Software Description:
Apache server plugin making it possible to write Apache modules entirely in
Perl.  Apache/Perl modules include:
    Apache::Registry       - Run unaltered CGI scripts 
    Apache::Status         - Embedded interpreter runtime status        
    Apache::Embperl        - Embed Perl code in HTML documents
    Apache::SSI            - Implement server-side includes in Perl
    Apache::DBI            - Maintain persistent DBI connections
    Apache::Gateway        - Implement an HTTP/1.1 gateway
    Apache::GzipChain      - Compress output on the fly
    Apache::Filter         - Filter document and script output
    Apache::Sandwich       - Generate page headers and footers
    Apache::TransLDAP      - Translate URIs via LDAP lookups
    Apache::ASP            - Implement "Active Server Pages"
    Apache::AuthenDBI      - Authenticate against a database via DBI  
    Apache::PHLogin        - Authenticate against a PH database
    Apache::DBILogger      - Log requests to a database via DBI
    Apache::Session        - Persistent session management
    Apache::Throttle       - Content negotiation based on connection speed
The Apache/Perl module list keeps track of modules inside and outside
the distribution, along with idea placeholders.  
It is also possible to use Perl to configure your server
(in *.conf files) with <Perl> sections.  This eases often complicated and
cumbersome configuration of virtual host and various resources.
Installation Hardware: SunOS tintin 5.6 Generic_105181-04 sun4u sparc SUNW,Ultra-2
Compiler: gcc version 2.8.1
Installation OS: Solaris 2.6
Host-specific installation:
User-specific installation:
Software used by this package for operation: apache
Software used by this package for installation: apache
Software depending on this package for operation: apache
Software depending on this package for installation: apache
Environment variables:
Notes:
--------------------------------------------------------------------------------

 1) If using perl installed in a public location which is not writeable (such
    as when using depot, when the perl directory is mounted to the local host
    via NFS), be sure to copy the perl installation directory (for example,
    /depot_server/sparc/SunOS5.6/package/perl_5.005_02) into the local file
    system in such a way that it can be written to:

       rm /depot/package/perl_5.005_02 (a symbolic link)
       tar cvfb - 20 /depot_server/sparc/SunOS5.6/package/perl_5.005_02 | \
          ( cd /depot/package ; tar xvBfb - 20 )

    Adjust the above instrcutions apporpirately to follow your local
    installation conventions.  Without this precaution, the installation of
    perl modules into the perl tree will fail.  This copy of the perl directory
    will henceforth be referred to as the "local perl directory."  Once the
    various following installation steps are accomplished, the directory may be
    restored to its original location. 

    When install perl, need to use -Ubincompat5005 flag to turn off the malloc
    pollution, use -Uuselargefiles to turn off understanding large files (since     
Apache is installed in such way that it will not understand large files).
    Also when running configure in perl, answer no when it asks whether you want
    to use malloc coming with this perl distribution. Always build dynamic load
    for perl, otherwise one of the following perl module can not be compiled 
    correctly.

 2) Add the following perl modules into the local perl installation (otherwise
    the mod_perl tests will fail):

       MIME-BASE64-2.11
       URI-1.02
       HTML-Parser_MD5-2.0.7
       libnet-1.0606
       libwww-perl-5.43
            
    Each module is installed following the same procedure:

    1) Unpack source, cd into source dir
    2) perl Makefile.PL
    3) make
    4) make test
    5) make install
    6) make clean

 3) Unpack the distribution file into the source tree:

       gunzip mod_perl-1.24.tar.gz | tar xvf -
       mv mod_perl-1.24 mod_perl_1.24

    the directory is assumed to exist alongisde the apache_1.3.12 directory.

 4) Clean up (as precaution):

       make distclean

    [transcript appended]

 5) Configure to build mod_perl as a DSO (dynamically shared object):
 
       cd mod_perl_1.24
       perl Makefile.PL \
           USE_APXS=1 \
           WITH_APXS=/site/subsys/www/apache_1.3.12/bin/apxs \
           EVERYTHING=1

    where:

       USE_APXS   causes the Apache DSO creation tool, apxs (APache eXtension),
                     to be employed
       WITH_APXS  specifies the path to apxs
       EVERYTHING enable all features of mod_perl

    [transcript appended]

 6) Build mod_perl:

       make

    [transcript appended]

 7) Test mod_perl:

       make test

    [transcript appended]

 8) Install mod_perl into existing Apache installation hierarchy:

       make install

    [transcript appended]

 9) Clean up:

       make distclean

    [transcript appended]


Reply via email to