FYI To you all ---------- Forwarded message ---------- From: Asim Zfafir <[EMAIL PROTECTED]> Date: Apr 20, 2007 5:24 PM Subject: Re: mod_perl. To: Arshavir Grigorian <[EMAIL PROTECTED]>
Arsh, Thanks for the detailed email. I have familiarity with Perl and have coded in perl before, its just that I am trying to get hands on it again. Basically, i have my apache web server running fine, i was able to read some basic mod-perl script too, but it appeared as if i didn't had mod-perl properly configured. first i was confused, if apachetcl is reading mod-perl config parameters from /etc/httpd/75_modperl.conf (i just recalled this path, pardon if thats not correct) or i need to define the mod_perl module in httpd.conf itself. I was trying to use Apache::Vmonitor feature as I mentioned in my previous email. anyways, I figured now that i didn;t had the source for apache 2.2.x but anyways, i went and download the src for apache.1.3.x (just so that i can compile mod_perl) and then I got mod_perl src from apache's website. i put untar'd & unziped the files in /home/stas/src - and then i ran the following command... perl Makefile.PL APACHE_SRC=/home/stas/src/apache_1.3.37/src DO_HTTPD=1 USE APACI=1 EVERYTHING=1 when i did that i got a warning... and this was it.. ---> ************* WARNING ************* Your Perl is configured to link against libgdbm, but libgdbm.so was not found. You could just symlink it to /usr/lib/libgdbm.so.2.0.0 (To remedy, this I added a symbolic link to /usr/lib/libgdbm.so.2.0.0 in the same directory as ln -s /usr/lib/libgdbm.so.2.0.0 libgdbm.i ran the command again but still i was getting the same warning- i then removed libgdm and renamed the link file to libgdbm.so but still i wasn't able to get rid of the warning...) here was the output from the screen:: [EMAIL PROTECTED] mod_perl-1.30]# ln -s /usr/lib/libgdbm.so.2.0.0 libgdbm.so [EMAIL PROTECTED] mod_perl-1.30]# perl Makefile.PLAPACHE_SRC=/home/stas/src/apache_1.3.37/src DO_HTTPD=1 USE APACI=1 EVERYTHING=1 ************* WARNING ************* Your Perl is configured to link against libgdbm, but libgdbm.so was not found. You could just symlink it to /usr/lib/libgdbm.so.2.0.0 ************* WARNING ************* Appending mod_perl to src/Configuration Using config file: /home/stas/src/mod_perl-1.30/src/Configuration Creating Makefile + configured for Linux platform + setting C compiler to gcc + setting C pre-processor to gcc -E + using "tr [a-z] [A-Z]" to uppercase + checking for system header files + adding selected modules + using builtin Expat + checking sizeof various data types + doing sanity check on compiler and options Creating Makefile in support Creating Makefile in regex Creating Makefile in os/unix Creating Makefile in ap Creating Makefile in main Creating Makefile in lib/expat-lite Creating Makefile in modules/standard EXTRA_CFLAGS: -DLINUX=22 -DHAVE_SET_DUMPABLE -DUSE_HSREGEX -DUSE_EXPAT -I$(SRCDIR)/lib/expat-lite -DNO_DL_NEEDED PerlDispatchHandler.........enabled PerlChildInitHandler........enabled PerlChildExitHandler........enabled PerlPostReadRequestHandler..enabled PerlTransHandler............enabled PerlHeaderParserHandler.....enabled PerlAccessHandler...........enabled PerlAuthenHandler...........enabled PerlAuthzHandler............enabled PerlTypeHandler.............enabled PerlFixupHandler............enabled PerlHandler.................enabled PerlLogHandler..............enabled PerlInitHandler.............enabled PerlCleanupHandler..........enabled PerlRestartHandler..........enabled PerlStackedHandlers.........enabled PerlMethodHandlers..........enabled PerlDirectiveHandlers.......enabled PerlTableApi................enabled PerlLogApi..................enabled PerlUriApi..................enabled PerlUtilApi.................enabled PerlFileApi.................enabled PerlConnectionApi...........enabled PerlServerApi...............enabled PerlSections................enabled PerlSSI.....................enabled Will run tests as User: 'nobody' Group: 'root' Checking CGI.pm VERSION..........ok Checking for LWP::UserAgent......ok Checking for HTML::HeadParser....ok 'APACI' is not a known MakeMaker parameter name. Writing Makefile for Apache Writing Makefile for Apache::Connection Writing Makefile for Apache::Constants Writing Makefile for Apache::File Writing Makefile for Apache::Leak Writing Makefile for Apache::Log Writing Makefile for Apache::ModuleConfig Writing Makefile for Apache::PerlRunXS Writing Makefile for Apache::Server Writing Makefile for Apache::Symbol Writing Makefile for Apache::Table Writing Makefile for Apache::URI Writing Makefile for Apache::Util Writing Makefile for mod_perl [EMAIL PROTECTED] mod_perl-1.30]# make Makefile out-of-date with respect to Makefile.PL/usr/lib/perl5/5.8.8/i386-linux/Config.pm /usr/lib/perl5/5.8.8/i386-linux/CORE/config.h Cleaning current config before rebuilding Makefile... make -f Makefile.old clean > /dev/null 2>&1 /usr/bin/perl Makefile.PL "USE" "APACI=1" ************* WARNING ************* Your Perl is configured to link against libgdbm, but libgdbm.so was not found. You could just symlink it to /usr/lib/libgdbm.so.2.0.0 ************* WARNING ************* Configure mod_perl with ../apache_1.3.37/src ? [y] Shall I build httpd in ../apache_1.3.37/src for you? [y] Appending mod_perl to src/Configuration Using config file: /home/stas/src/mod_perl- 1.30/src/Configuration Creating Makefile + configured for Linux platform + setting C compiler to gcc + setting C pre-processor to gcc -E + using "tr [a-z] [A-Z]" to uppercase + checking for system header files + adding selected modules + using builtin Expat + checking sizeof various data types + doing sanity check on compiler and options Creating Makefile in support Creating Makefile in regex Creating Makefile in os/unix Creating Makefile in ap Creating Makefile in main Creating Makefile in lib/expat-lite Creating Makefile in modules/standard EXTRA_CFLAGS: -DLINUX=22 -DHAVE_SET_DUMPABLE -DUSE_HSREGEX -DUSE_EXPAT -I$(SRCDIR)/lib/expat-lite -DNO_DL_NEEDED PerlDispatchHandler.........disabled (enable with PERL_DISPATCH=1) PerlChildInitHandler........enabled PerlChildExitHandler........enabled PerlPostReadRequestHandler..disabled (enable with PERL_POST_READ_REQUEST=1) PerlTransHandler............disabled (enable with PERL_TRANS=1) PerlHeaderParserHandler.....disabled (enable with PERL_HEADER_PARSER=1) PerlAccessHandler...........disabled (enable with PERL_ACCESS=1) PerlAuthenHandler...........disabled (enable with PERL_AUTHEN=1) PerlAuthzHandler............disabled (enable with PERL_AUTHZ=1) PerlTypeHandler.............disabled (enable with PERL_TYPE=1) PerlFixupHandler............disabled (enable with PERL_FIXUP=1) PerlHandler.................enabled PerlLogHandler..............disabled (enable with PERL_LOG=1) PerlInitHandler.............disabled (enable with PERL_INIT=1) PerlCleanupHandler..........disabled (enable with PERL_CLEANUP=1) PerlRestartHandler..........disabled (enable with PERL_RESTART=1) PerlStackedHandlers.........disabled (enable with PERL_STACKED_HANDLERS=1) PerlMethodHandlers..........disabled (enable with PERL_METHOD_HANDLERS=1) PerlDirectiveHandlers.......disabled (enable with PERL_DIRECTIVE_HANDLERS=1) PerlTableApi................disabled (enable with PERL_TABLE_API=1) PerlLogApi..................disabled (enable with PERL_LOG_API=1) PerlUriApi..................disabled (enable with PERL_URI_API=1) PerlUtilApi.................disabled (enable with PERL_UTIL_API=1) PerlFileApi.................disabled (enable with PERL_FILE_API=1) PerlConnectionApi...........enabled PerlServerApi...............enabled PerlSections................disabled (enable with PERL_SECTIONS=1) PerlSSI.....................disabled (enable with PERL_SSI=1) Will run tests as User: 'nobody' Group: 'root' Checking CGI.pm VERSION..........ok Checking for LWP::UserAgent......ok Checking for HTML::HeadParser....ok Checking if your kit is complete... Looks good 'APACI' is not a known MakeMaker parameter name. Writing Makefile for Apache Writing Makefile for Apache::Connection Writing Makefile for Apache::Constants Writing Makefile for Apache::File Writing Makefile for Apache::Leak Writing Makefile for Apache::Log Writing Makefile for Apache::ModuleConfig Writing Makefile for Apache::PerlRunXS Writing Makefile for Apache::Server Writing Makefile for Apache::Symbol Writing Makefile for Apache::Table Writing Makefile for Apache::URI Writing Makefile for Apache::Util Writing Makefile for mod_perl ==> Your Makefile has been rebuilt. <== ==> Please rerun the make command. <== false make: *** [Makefile] Error 1 *IT also doesnt recoganized APACI parameter --* On 4/20/07, Arshavir Grigorian <[EMAIL PROTECTED]> wrote:
Asim, Apache is the name of the web server. There are 2 main versions - Apache 1.x (1.3) and Apache 2.x. Obviously, the 2.x version is newer and has more features, a cleaner configuration interface, etc. The source code for the Apache webserver is available from the http://httpd.apache.org/ website. You can also find a lot of documentation on how to compile and configure the webserver. Perl is a programming language which you need to learn before you start working in mod_perl. There are a dozen ways to learn Perl. There are a lot of resources available on line. You can also just buy a book and learn it the good old way. Programming Perl (aka the camel book) is generally considered to be a very good book. I highly recommend you get it if you are planning to do Perl work. mod_perl is an Apache module that allows you to have your Perl programs be compiled and cached within the Apache server. The mod_perl approach increases the memory footprint of the Apache server but allows your Perl programs to run much faster (vs CGI). There is a lot more to it, but you need to read the documentation to get a better understanding of how things fit together. http://perl.apache.org/ is the official website for mod_perl and http://perl.apache.org/docs/2.0/user/intro/start_fast.html is a good place to start learning mod_perl. Please read the documentation. You can learn a lot from it. Good luck. Arsh On 4/20/07, Asim Zfafir <[EMAIL PROTECTED]> wrote: > Guys, can you help me with this issue ? I will greatly appreciate > > ---------- Forwarded message ---------- > From: Asim Zfafir < [EMAIL PROTECTED]> > Date: Apr 20, 2007 4:42 PM > Subject: mod_perl. > To: [EMAIL PROTECTED] > > Hi .. > I got your email address from the Perl mailing list. IT appears to me that > you know Perl a lil better then me. At the moment, I am trying to get my > self familiar with Perl and Mod_Perl interface. > > I am having issues using some mod_perl routines ( i guess). here is what I > am running on my mandriva linux box > > I did the following: > > [EMAIL PROTECTED] /]# apachectl -v > Server version: Apache/2.2.3 > Server built: Jul 28 2006 12:12:07 > > and it returned me the val of Server Version : Apache / 2.2.3 does that mean > that I got my Apache webserver all set? What is Apache 1.3 server? is it > different then HTTP Server? > > I tried writing a small perl program and tried to read the output, i was > able to read it via web-server interface - that should mean that I have > mod-perl configured. ? is that enough? or should i check it more? > > I wanted to monitor my server resources by using Apache::Vmonitor module, I > tried adding the following lines to perl conf file in > /etc/httpd/module/75_modperl.conf > > <Location> > SetHandler perl-script > PerlHander Apache::Vmonitor > Options ExecCGI > ... > ... > </Location> > > When i tried to shut the apachetl server, i got the error msg stating that > Perlhandler is not recoganized synatx.. I am sure I am missing something > here, Can you guide me to get out of this issue? > > Thanks, > > Asim >