I know that I have probably beat this issue to a dead horse but has
anyone been successful getting Apache to work with mod_perl from RPM
installations in the initial setup of Linux (RedHat 6.2, Mandrake Linux
7.0 or the like)?  Bear with me, this email includes all my
configuration information including samples from httpd.conf,
mod_perl.conf, apachectl status, httpd -l, mod_perl execution error,
etc.  Thanks!

****************************************************************
ENVIRONMENT:

Apache, version 1.3.12
Perl, version 5.005_03 built for i386-linux
GCC version 2.95.2 19991024 (release)
Mod_perl, version 1.21
****************************************************************

I have been hesitant to remove what has been installed but I may have to
go with building everything from source.

I believe that mod_perl on my system has been configured as a DSO.  At
the end of my httpd.conf file I have the following line:

****************************************************************
END OF HTTPD.CONF FILE --- /etc/httpd/conf/httpd.conf

Include conf/addon-modules/mod_perl.conf

****************************************************************
MOD_PERL.CONF FILE --- /etc/httpd/conf/addon-modules/mod_perl.conf

LoadModule perl_module    /usr/lib/apache/libperl.so
AddModule mod_perl.c

Alias /mod-perl/ /home/httpd/mod-perl/
<Location /mod-perl>
SetHandler perl-script
PerlHandler Apache::Registry
PerlSendHeader On
Options +ExecCGI
</Location>

****************************************************************
It appears that mod_perl was not originally compiled into Apache is
included as a DSO and is addressed at the end of httpd.conf.  I would
expect to see mod_perl.c as output of 'httpd -l' but I do not get that.

****************************************************************
OUTPUT OF 'httpd -l'

Compiled-in modules:
http_core.c
mod_so.c

****************************************************************
I am confused however in that if I run 'apachectl status' while Apache
is running I get the following.

****************************************************************
OUTPUT OF 'apachectl status'

Apache Server Status for LaZaRus.ubfQd.net

   Server Version: Apache/1.3.9 (NetRevolution Advanced Extranet
   Server/Linux-Mandrake) PHP/3.0.13 mod_perl/1.21
   Server Built: Jan 5 2000 05:09:42
     _________________________________________________________________

   Current Time: Monday, 17-Jul-2000 22:03:40 CDT
   Restart Time: Monday, 17-Jul-2000 17:28:00 CDT
   Parent Server Generation: 2
   Server uptime: 4 hours 35 minutes 40 seconds
   1 requests currently being processed, 8 idle servers
_._______W......................................................
................................................................
................................................................
................................................................

   Scoreboard Key:
   "_" Waiting for Connection, "S" Starting up, "R" Reading Request,
   "W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
   "L" Logging, "G" Gracefully finishing, "." Open slot with no current
   process

****************************************************************
The configuration line seems to indicate that mod_perl is installed???

Server Version: Apache/1.3.9 (NetRevolution Advanced Extranet
Server/Linux-Mandrake) PHP/3.0.13 mod_perl/1.21

****************************************************************
HTTPD.CONF WITHOUT COMMENTS

ResourceConfig /dev/null
AccessConfig /dev/null

LoadModule env_module         modules/mod_env.so
LoadModule config_log_module  modules/mod_log_config.so
LoadModule agent_log_module   modules/mod_log_agent.so
LoadModule referer_log_module modules/mod_log_referer.so
LoadModule mime_module        modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule status_module      modules/mod_status.so
LoadModule info_module        modules/mod_info.so
LoadModule includes_module    modules/mod_include.so
LoadModule autoindex_module   modules/mod_autoindex.so
LoadModule dir_module         modules/mod_dir.so
LoadModule cgi_module         modules/mod_cgi.so
LoadModule asis_module        modules/mod_asis.so
LoadModule imap_module        modules/mod_imap.so
LoadModule action_module      modules/mod_actions.so
LoadModule userdir_module     modules/mod_userdir.so
LoadModule proxy_module       modules/libproxy.so
LoadModule alias_module       modules/mod_alias.so
LoadModule rewrite_module     modules/mod_rewrite.so
LoadModule access_module      modules/mod_access.so
LoadModule auth_module        modules/mod_auth.so
LoadModule anon_auth_module   modules/mod_auth_anon.so
LoadModule digest_module      modules/mod_digest.so
LoadModule expires_module     modules/mod_expires.so
LoadModule headers_module     modules/mod_headers.so
LoadModule usertrack_module   modules/mod_usertrack.so
LoadModule setenvif_module    modules/mod_setenvif.so

ClearModuleList

AddModule mod_env.c
AddModule mod_log_config.c
AddModule mod_log_agent.c
AddModule mod_log_referer.c
AddModule mod_mime.c
AddModule mod_negotiation.c
AddModule mod_status.c
AddModule mod_info.c
AddModule mod_include.c
AddModule mod_autoindex.c
AddModule mod_dir.c
AddModule mod_cgi.c
AddModule mod_asis.c
AddModule mod_imap.c
AddModule mod_actions.c
AddModule mod_userdir.c
AddModule mod_proxy.c
AddModule mod_alias.c
AddModule mod_rewrite.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_auth_anon.c
AddModule mod_digest.c
AddModule mod_expires.c
AddModule mod_headers.c
AddModule mod_usertrack.c
AddModule mod_so.c
AddModule mod_setenvif.c

DocumentRoot /home/httpd/html

UserDir public_html

DirectoryIndex index.html index.htm index.shtml index.cgi  Default.htm
default.htm index.php3

FancyIndexing on

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core
AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

ReadmeName README
HeaderName HEADER

IndexIgnore .??* *~ *# HEADER* README* RCS

AccessFileName .htaccess
TypesConfig /etc/httpd/conf/apache-mime.types
DefaultType text/plain
AddEncoding x-compress Z
AddEncoding x-gzip gz

AddLanguage en .en
AddLanguage fr .fr
AddLanguage de .de
AddLanguage da .da
AddLanguage el .el
AddLanguage it .it

LanguagePriority en fr de

Alias /icons/ /home/httpd/icons/
ScriptAlias /cgi-bin/ /home/httpd/cgi-bin/
ScriptAlias /protected-cgi-bin/ /home/httpd/protected-cgi-bin/
AddType application/x-httpd-php3 .php3 .phtml .php
AddType application/x-httpd-php3-source .phps
AddHandler cgi-script .cgi
AddType text/html .shtml
AddHandler server-parsed .shtml
AddHandler imap-file map

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0

BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

<Directory />
Options Indexes Includes FollowSymLinks
AllowOverride None
</Directory>

<Directory /home>

Options Indexes Includes FollowSymLinks

AllowOverride All

order allow,deny
allow from all

</Directory>

<Directory /home/httpd/cgi-bin>
AllowOverride None
Options ExecCGI
</Directory>

<Directory /home/httpd/protected-cgi-bin>
order deny,allow
deny from all
allow from localhost
AllowOverride None
Options ExecCGI
</Directory>

<Location /server-status>
SetHandler server-status

order deny,allow
deny from all
allow from localhost, 127.0.0.1
</Location>

Alias /doc /usr/doc
<Directory /usr/doc>
order deny,allow
deny from all
allow from localhost, 127.0.0.1

Options Indexes FollowSymLinks
</Directory>

ServerType standalone
Port 80
HostnameLookups off
User nobody
Group nobody
ServerAdmin root@localhost
ServerRoot /etc/httpd
Listen 80
ErrorLog logs/error_log
LogLevel warn

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

CustomLog logs/access_log combined
PidFile /var/run/httpd.pid
ScoreBoardFile /etc/httpd/httpd.scoreboard
LockFile /etc/httpd/httpd.lock
UseCanonicalName on
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
MinSpareServers 8
MaxSpareServers 20
StartServers 10
MaxClients 150
MaxRequestsPerChild 500

Include conf/vhosts/vhost0.conf

Include conf/addon-modules/mod_perl.conf
Include conf/addon-modules/mod_php3.conf

****************************************************************

Server IP:  192.168.0.2

CGI EXECUTION:  http://192.168.0.2/cgi-bin/cgi_test.pl --- works fine!!!

MOD_PERL EXEC:  http://192.168.0.2/mod-perl/modperl.pl ---does not
work!!!

****************************************************************
MOD_PERL EXECUTION ERROR

The document contained no data.  Try again later, or contact the
server's
administrator.  <OK>

****************************************************************
The file (modperl.pl) exists and is not empty.  What permissions do you
usually assign to a CGI or mod_perl script?

Right now they are perm, user, group respectively:  755   root   root
Should these be changed to user and group nobody???

****************************************************************
UNINSTALLING RPM DISTRIBUTIONS???

If indeed I am stupid for continuing to mess with this RPM install - be
honest and tell me.  If you recommend installing from source, what is
the best way to clean up all of this default installation stuff -
Apache, Apache front-end utility in DrakConf, mod_perl, etc.  If I use
RPM to uninstall these is that all I need to do?

Guys if I can get this figured out I will ask no more questions.  :)

THANK YOU VERY VERY MUCH!!!

Rich Lemanski
Software Engineer





Reply via email to