ver. 1.18 of mod_perl Guide is online. Read it at http://perl.apache.org/guide/ => Lots of new stuff, please review. => Notice a complete rewrite of install and debug sections. CHANGES: * An almost complete rewrite of debug.pod: (Integrated Doug's debugging article at perlmonth.com) Curing The "Internal Server Error" Helping error_log to Help Us The Importance of Warnings diagnostics pragma Monitoring the error_log file Hanging processes: Detection and Diagnostics An Example of the Code that Might Hang the Process Detecting hanging processes Determination of the reason Handling the 'User pressed Stop button' case Detecting Aborted Connections The Importance of Cleanup Code Critical Section Safe Resource Locking Cleanup Code Handling the server timeout cases and working with $SIG{ALRM} Watching the server Configuration Usage Compiled Registry Scripts section seems to be empty. Sometimes script works, sometimes does not Code Debug Locating and correcting Syntax Errors Using Apache::FakeRequest to Debug Apache Perl Modules Finding the Line Number the Error/Warning has been Triggered at Using print() Function for Debugging The Importance of Good Coding Style and Conciseness Introduction into Perl Debugger Interactive Perl Debugging under mod_cgi Non-Interactive Perl Debugging under mod_perl Interactive Perl Debugging under mod_perl Interactive Perl Debugging under mod_perl and ptkdb Debugging core Dumping Code Apache::Debug Debugging Core Dumps Debug Tracing gdb says there are no debugging symbols Debugging Signal Handlers ($SIG{FOO}) Code Profiling Devel::Peek How can I find if my mod_perl scripts have memory leaks Debugging your code in Single Server Mode * A complete rewrite of install.pod: (Integrated the INSTALL.* docs from the mod_perl distribution) Installing mod_perl in 10 Minutes and 10 Command Lines The Gory Details Sources Configuration (perl Makefile.PL ...) Configuration parameters APACHE_SRC DO_HTTPD, NO_HTTPD, PREP_HTTPD Callback Hooks EVERYTHING PERL_TRACE APACHE_HEADER_INSTALL PERL_STATIC_EXTS PERL_MARK_WHERE APACHE_PREFIX APACI_ARGS Reusing Configuration Parameters Discovering whether some option was configured Using an alternative Configuration file mod_perl Building (make) make Troubleshooting undefined reference to 'Perl_newAV' Built Server Testing (make test) Manual Testing make test Troubleshooting make test fails mod_perl.c is incompatible with this version of apache make test......skipping test on this platform Installation (make install) Building Apache and mod_perl by Hand Installation Scenarios for Standalone mod_perl The All-In-One Way The Flexible Way Build mod_perl as DSO inside Apache source tree via APACI Build mod_perl as DSO outside Apache source tree via APXS Installation Scenarios for mod_perl and Other Components mod_perl and mod_ssl (+openssl) mod_perl and mod_ssl Rolled from RPMs mod_perl and apache-ssl (+openssl) mod_perl and Stronghold Note For Solaris 2.5 users mod_perl Installation with CPAN.pm's Interactive Shell Installing on multiple machines using RPM, DEB and other packages to install mod_perl A word on mod_perl RPM packages Getting Started Compiling RPM source files Mix and Match RPM and source Installing a single apache+mod_perl RPM Compiling libapreq (Apache::Request) with the RH 6.0 mod_perl RPM Installing separate Apache and mod_perl RPMs Testing the mod_perl API Installation Without Superuser Privileges Installing Perl Modules into a Directory of Choice Making Your Scripts Find the Locally Installed Modules CPAN.pm Shell and Locally Installed Modules Making a Local Apache Installation Actual Local mod_perl Enabled Apache Installation Local mod_perl Enabled Apache Installation with CPAN.pm Automating installation How can I tell whether mod_perl is running Testing by checking the error_log file Testing by viewing /perl-status Testing via telnet Testing via a CGI script Testing via lwp-request General Notes Should I rebuild mod_perl if I have upgraded my perl? Perl installation requirements mod_auth_dbm nuances Stripping apache to make it almost perl-server Saving the config.status Files with mod_perl, php, ssl and Other Components Should I Build mod_perl with gcc or cc? OS Related Notes * databases: added "Debugging code which deploys DBI" * porting: added "STDIN, STDOUT and STDERR streams" * advocacy: added "A summary of perl/cgi discussion at slashdot.org" * snippets: added "Terminating a child process on Request Completion" (Doug) * troubleshooting": added "Apache.pm failed to load!" (Doug) * snippets: added "Reading POST Data, then Redirecting" (Doug) * snippets: added "Cache control for regular and error modes" (Cliff Rayman) * performance: added "Be carefull with symbolic links" (the same script compiled twice) * install: new "apache/mod_perl/mod_ssl Rolled from RPMs Scenario" (Stephane Benoit) * porting: 'use subs (exit)' typo fixed (Chris Nokleberg) * warnings.pod was renamed to troubleshooting.pod and now it's categorized by the following sections: Building and Installation Configuration and Startup Code Parsing and Compilation Runtime Shutdown and Restart * porting: the following sections were moved to debug.pod: "Finding the Line Number the Error/Warning has been Triggered at", "Turning warnings ON", "diagnostics pragma" * porting: rewritten "Comman line Switches (-w, -T, etc)" * performance: "Forking or Executing subprocesses from mod_perl" updated with another CHLD sighandler using WNOHANG to reap zombie processes (Lincoln Stein) * install: updated "Testing via a CGI script" (Geoffrey S Young) * porting: updated "Terminating requests and processes, exit() function" with info about post_request termination, Apache::SizeLimit and Apache::GTopLimit * perlformance: links from http://www.realtime.net/~parkerm/perl/conf98/index.htm and http://www.realtime.net/~parkerm/perl/conf98/sld006.htm were dead (I removed them :( (Peter Skov) * snippets: added "Caching the POSTed Data" (Doug) * install: "Compiling libapreq with mod_perl RPM" reviewed and corrected (Geoffrey S Young) * status.pod has been eliminated and absorbed by debug.pod where it belong * Fixed pod translator. Now it handles correctly C<$r-E<gt>method> encodings. (Andreas Koenig) Enjoy! _______________________________________________________________________ Stas Bekman mailto:[EMAIL PROTECTED] www.singlesheaven.com/stas Perl,CGI,Apache,Linux,Web,Java,PC at www.singlesheaven.com/stas/TULARC www.apache.org & www.perl.com == www.modperl.com || perl.apache.org single o-> + single o-+ = singlesheaven http://www.singlesheaven.com