Online Perl Programming Books
Practical mod_perl


Linuxtopia Contents


Symbols & Numbers | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

Index: C

C, runtime performance compared to Perl: 13.12. Comparing Runtime Performance of Perl and C
cache-control header: 16.1.3. Expires and Cache-Control Headers
caching
enabling: 12.7.5. Caching Feature
smart memory-page caching: 10.1.1. Calculating Real Memory Usage
caching data: 13.10. Caching and Pre-Caching
Memoize module: 13.11. Caching with Memoize
calendar example (caching data): 13.10. Caching and Pre-Caching
Callback called exit, message: 22.3.9. Callback called exit
callback hooks, activating: 3.1.2. Activating Callback Hooks
caller( ): 21.1.2. Curing "Internal Server Error" Problems
caller macro: 21.7.5. mod_perl gdb Debug Macros
can_stack_handlers method: 4.2.7. Stacked Handlers
CanÕt load, message: 22.2.6. Can't load `.../auto/DBI/DBI.so' for module DBI
CanÕt locate loadable object for module, message: 22.2.3. Can't locate loadable object for module ...
CanÕt locate object method, message: 22.2.4. Can't locate object method "get_handlers" ...
carp( ): 21.1.2. Curing "Internal Server Error" Problems
Carp module, function call stack backtrace, printing: 21.1.2. Curing "Internal Server Error" Problems
C/C++, libraries, memory leaks and: 14.2.6. Memory Leakage
certificates, SSL, creating and installing: 3.6.3. Installing mod_perl with Apache-SSL (+openssl)
CGI
code returned as plain text: 22.3.4. CGI Code Is Returned as Plain Text Instead of Being Executed
hello user script: 1.1.2. The Common Gateway Interface Specification
hello world script: 1.1.2. The Common Gateway Interface Specification
history: 1.1. A Brief History of CGI
online tutorial: 1.1.2. The Common Gateway Interface Specification
principles of operation: 1.1.2. The Common Gateway Interface Specification
programming practices, poor practices: 1.2.2. CGI Scripts Under the Forking Model
scripts
forking model: 1.2.2. CGI Scripts Under the Forking Model
mod_perl example: 2.6. A Sample Apache::Registry Script
porting to mod_perl: 2.6.1. Porting Existing CGI Scripts to mod_perl
running: 2.6. A Sample Apache::Registry Script
Template Toolkit: D.3. Typical Uses
testing mod_perl: 3.10.4. Testing via a CGI Script
specification web site: 1.5. References
cgi-list mailing list: 23.3.4. Perl/CGI
CGI::Cookie module, replacing with Apache::Cookie: 6.7.3. Converting to use the mod_perl API and mod_perl-Specific Modules
CGI::param module, compared to Apache::Request::param and Apache::args: 13.2. Apache::args Versus Apache::Request::param Versus CGI::param
CGI::params module: A.8. CGI::params in the mod_perlish Way
CGI.pm module: 1.1.2. The Common Gateway Interface Specification
compile( ): 4.3.1. A Sample Startup File
header( ) function: 6.11. Generating Correct HTTP Headers
initialization: 10.1.5.2. Initializing CGI.pm
output generation: 1.1.2. The Common Gateway Interface Specification
parameters, handling: 1.1.2. The Common Gateway Interface Specification
replacing with Apache::Request: 6.7.3. Converting to use the mod_perl API and mod_perl-Specific Modules
characters, line-end character sequence: 1.1.2. The Common Gateway Interface Specification
chdir( ) funtion, issues with: 25.1.4. ModPerl::Registry Family
CHECK blocks: 6.5. CHECK and INIT Blocks
child processes
dirty memory pages: 10.1. Sharing Memory
forked, Perl interpreter inheritance: 10.1. Sharing Memory
killing: 6.4.1. exit( )
lifespan: 1.2.1. Forking
maximum number of: 10.1.1. Calculating Real Memory Usage
MaxRequestPerChild directive: 10.1. Sharing Memory
memory sharing and: 10.1. Sharing Memory
reloading errors: 6.2.2. The Second Mystery—Inconsistent Growth over Reloads
resources, limiting: 5.11.3. Limiting Resources Used by Apache Child Processes
terminating, request completion: A.13. Terminating a Child Process on Request Completion
child_exit phase: 25.2. New Apache Phases and Corresponding Perl*Handlers
25.2.1.4. PerlChildExitHandler
child_init phase: 25.2. New Apache Phases and Corresponding Perl*Handlers
25.2.1.3. PerlChildInitHandler
child_terminate( ) method: A.13. Terminating a Child Process on Request Completion
chkconfig utility: 5.7. Preparing for Machine Reboot
Class::Singleton: A.12. Singleton Database Handles
cleanup
Apache request processing: 1.4. Apache 1.3 Request Processing Phases
PerlCleanupHandler directive: 10.2. Forking and Executing Subprocessesfrom mod_perl
cleanup code
importance of: 6.9.2. The Importance of Cleanup Code
safe locking: 6.9.2.2. Safe resource locking and cleanup code
cleanup_for_exec( ) method: 10.2.2. Freeing the Parent Process
clients
maximum number, calculating: 11.1. Setting the MaxClients Directive
queuing: 11.1. Setting the MaxClients Directive
clone option, PerlOptions directive: 24.5.6.2. Clone
closures, debugging: 6.2.1. The First Mystery: Why Does the Script Go Beyond 5?
cluck( ): 21.1.2. Curing "Internal Server Error" Problems
cluster, definition: 8.2. Choosing the Right Hardware
Coda file system, centralized log files: 5.11.1.3. Centralized logging
code
disabling on live servers
Apache::Registry: 5.8.3.1. Disabling code running under Apache::Registry
handlers and: 5.8.3.2. Disabling code running under other handlers
overview: 5.8.3. Disabling Scripts and Handlers on a Live Server
disabling services on live servers: 5.8.3.3. Disabling services with help from the frontend server
errors
multiple child process reloading: 6.2.2. The Second Mystery—Inconsistent Growth over Reloads
overview: 6.2. Exposing Apache::Registry Secrets
subroutines: 6.2.1. The First Mystery: Why Does the Script Go Beyond 5?
migrating mod_perl 1.0 to 2.0: 25.1.3. Code Porting
migration compatibility: 25.1.1. The Shortest Migration Path
Perl, benchmarking: 9.2. Perl Code Benchmarking
code profiling: 9.5. Code Profiling Techniques
Devel::DProf: 9.5.1. Profiling with Devel::DProf
Devel::SmallProf: 9.5.2. Profiling with Devel::SmallProf
coding
Apache::Registry
_ _DATA_ _ token: 6.6.1. _ _END_ _ and _ _DATA_ _ Tokens
_ _END_ _ token: 6.6.1. _ _END_ _ and _ _DATA_ _ Tokens
return codes: 6.6.3. Return Codes
symbolic links: 6.6.2. Symbolic Links
BEGIN blocks: 6.4.9. BEGIN blocks
broken connection detection
overview: 6.9. Handling the "User Pressed Stop Button" Case
tracing techniques: 6.9.1. Detecting Aborted Connections
broken connections, cleanup code: 6.9.2. The Importance of Cleanup Code
CHECK blocks: 6.5. CHECK and INIT Blocks
command-line switches: 6.5.2. Command-Line Switches
configuration files
creating: 6.8.2.4.1. Writing configuration files
dynamically updating: 6.8.2.4.3. Dynamically updating configuration files
reloading: 6.8.2.4.2. Reloading configuration files
die( ) function: 6.4.2. die( )
END blocks: 6.4.10. END Blocks
exit( ): 6.4.1. exit( )
global variables, persistence: 6.4.3. Global Variable Persistence
HTTP headers: 6.11. Generating Correct HTTP Headers
INIT blocks: 6.5. CHECK and INIT Blocks
method handlers: 6.12. Method Handlers: The Browse and See, Browse and View Example
mod_cgi scripts, converting to Perl content handler: 6.7.2. Converting into a Perl Content Handler
modules
forcing reloading: 6.8.2.1. Restarting the server
loading and reloading: 6.8.1. The @INC Array Under mod_perl
reloading, Apache::Reload and: 6.8.2.3. Using Apache::Reload
reloading, Apache::StatINC and: 6.8.2.2. Using Apache::StatINC
packages, advantages of creating: 6.2.1. The First Mystery: Why Does the Script Go Beyond 5?
print( ): 6.4.6. print( )
printing, formatting output: 6.4.7. Formats
regular expressions
optimizing: 6.5.3. Compiled Regular Expressions
repeated matching: 6.5.3.1. Matching patterns repeatedly
server timeout considerations: 6.10. Handling Server Timeout Cases and Working with $SIG{ALRM}
STDERR stream: 6.4.4. STDIN, STDOUT, and STDERR Streams
STDIN stream: 6.4.4. STDIN, STDOUT, and STDERR Streams
STDOUT stream: 6.4.4. STDIN, STDOUT, and STDERR Streams
redirecting to scalar variable: 6.4.5. Redirecting STDOUT into a Scalar Variable
strict pragma, importance of: 6.1.2. The strict Pragma
system calls, sending output to browser: 6.4.8. Output from System Calls
taint mode: 6.5.2.2. Taint mode
warnings
enabling: 6.5.2.1. Warnings
importance of enabling: 6.1.3. Enabling Warnings
coding idioms: 21.5.5. The Importance of a Good, Concise Coding Style
colocation, users: C.3. Giving Each User a Separate Machine (Colocation)
command-line
perl switches, mod_perl configuration and: 24.5.4. Perl's Command-Line Switches
switches: 6.5.2. Command-Line Switches
commands, mod_perl enabled server, building: 3. Installing mod_perl
Common Gateway Interface (see CGI)
compatibility
DSO mechanism: 3.1. Configuring the Source
make test errors: 3.3.2.2. mod_perl.c is incompatible with this version of Apache
single-process mode, Netscape: 5.2. Starting the Server in Single-Process Mode
compatibility layers, mod_perl migration: 25.1.1. The Shortest Migration Path
compile( ): 4.3.1. A Sample Startup File
CGI.pm initialization: 10.1.5.2. Initializing CGI.pm
compilers
mod_perl requirements: 2.1. Installing mod_perl 1.0 in Three Steps
selection of: 3.2.1. What Compiler Should Be Used to Build mod_perl?
compiling
failure, troubleshooting: 3.1.8.1. A test compilation with your Makefile configuration failed...
mod_perl, for debugging: 21.6.1. Getting Ready to Debug
Perl, for debugging: 21.6.1. Getting Ready to Debug
complex data structure storage: 19.6.3. Storing Complex Data Structures
concatenation (strings), performance: 13.4. Interpolation, Concatenation, or List
conditional clauses, Template Toolkit language: D.4. Template Toolkit Language
conditional GET requests: 16.4.2. Conditional GET Requests
confess( ): 21.1.2. Curing "Internal Server Error" Problems
configuration
alternative configuration files: 3.1.7. Using an Alternative Configuration File
Apache
importance of tweaking: 11. Tuning Performance by Tweaking Apache's Configuration
source: 3.1. Configuring the Source
Apache::DBI module: 20.1.3. Configuring Apache::DBI
Apache::ReadConfig module: 4.4.2. Breaking Out of <Perl> Sections
Apache::Status: 21.9.1.1. Minimal configuration
Apache::Status module: 9.4. Apache::Status and Measuring Code Memory Usage
Apache::VMonitor module: 5.10.2.1. Prerequisites and configuration
Apache::Watchdog::RunAway module: 5.11.4. Tracking and Terminating Hanging Processes
AxKit: E.1. Installing and Configuring AxKit
by directory (Apache): 4.1.1. Configuration Files
debugging: 4.4.7. Debugging
development tier (server implementation): 5.9. Three-Tier Server Scheme: Development, Staging, and Production
DSO support, advantages/disadvantages: 3.1. Configuring the Source
FAQ: 4.11. General Pitfalls
file browser module: 6.12. Method Handlers: The Browse and See, Browse and View Example
httpd_docs: 12.3.3.1. Basic httpd_docs server configuration
httpd_perl: 12.3.3.2. Basic httpd_perl server configuration
information reporting: 4.8. Enabling Remote Server Configuration Reports
I/O filters: 25.3.2. Filter Configuration
Makefile.PL: 3.1.1. Controlling the Build Process
MaxClients directive: 11.1. Setting the MaxClients Directive
MaxRequestsPerChild directive: 11.2. Setting the MaxRequestsPerChild Directive
method handlers: 4.2.8. Perl Method Handlers
mod_auth_dbm and mod_auth_db issues: 3.11.4. mod_auth_dbm Nuances
mod_cgi module: 1.1.3. Apache CGI Handling with mod_cgi
mod_perl
aliases: 4.2.1. Alias Configurations
enabling mod_perl: 24.5.1. Enabling mod_perl
improvements: 24.3.4. Improved and More Flexible Configuration
modperl handler: 24.5.5.1. modperl
module access: 24.5.2. Accessing the mod_perl 2.0 Modules
overview: 4.2. mod_perl Configuration
Perl command-line switches: 24.5.4. Perl's Command-Line Switches
perl-script handler: 24.5.5.2. perl-script
PerlOptions directive: 24.5.6. PerlOptions Directive
startup files: 24.5.3. Startup File
multiple server instances: 3.1. Configuring the Source
name-based virtual hosts
backend server: 12.10.5. Backend Server Configuration
frontend server: 12.10.4. Frontend Server Configuration
openssl: 3.6.2. Installing mod_perl with mod_ssl (+openssl)
parameters: 3.1.1. Controlling the Build Process
performance, information resources: 4.12. References
<Perl>section, constructing: 4.4.1. Constructing <Perl> Sections
prior to installation: 3.1. Configuring the Source
production tier (server implementation): 5.9. Three-Tier Server Scheme: Development, Staging, and Production
saving: 4.4.6. Saving the Perl Configuration
scripts directory: 2.5. Preparing the Scripts Directory
server
Perl and: 4.4. Apache Configuration in Perl
validating syntax: 4.5. Validating the Configuration Syntax
Squid server: 12.6.2. Light Apache, mod_perl, and Squid Setup Implementation Details
staging tier (server implementation): 5.9. Three-Tier Server Scheme: Development, Staging, and Production
troubleshooting: 22.1. Configuration and Startup
two server approach
servers: 12.3.3. Configuration of the Servers
source: 12.3.2. Configuration and Compilation of the Sources
on Unix: 2.3. Configuring and Starting the mod_perl Server
validating: 5.5. Validating Server Configuration
virtual hosts: 12.10.2. Dual-Server Virtual Host Configuration
configuration directives: 4.1.7. MinSpareServers, MaxSpareServers, StartServers, MaxClients, and MaxRequestsPerChild
Apache: 4.1.2. Configuration Directives
scope: 4.6. The Scope of mod_perl Configuration Directives
Configuration file, preparing for manual build: 3.4.1. Manually Building a mod_perl-Enabled Apache
configuration files
Apache: 4.1.1. Configuration Files
creating: 6.8.2.4.1. Writing configuration files
creating in Perl: 4.4.3. Cheating with Apache->httpd_conf
creating/including separate: 4.2. mod_perl Configuration
<Directory> section: 4.1.3. <Directory>, <Location>, and <Files> Sections
4.1.3.1. <Directory directoryPath> ... </Directory>
dynamically updating: 6.8.2.4.3. Dynamically updating configuration files
<Files> section: 4.1.3. <Directory>, <Location>, and <Files> Sections
4.1.3.2. <Files filename > ... </Files>
4.2. mod_perl Configuration
<FilesMatch> section: 4.1.5. Subgrouping of <Directory>, <Location>, and <Files> Sections
HTTP headers and: 6.11. Generating Correct HTTP Headers
<Location> section: 4.1.3. <Directory>, <Location>, and <Files> Sections
4.1.3.3. <Location URI> ... </Location>
overriding: 4.2.2. <Location /perl> Sections
<Location/perl> section: 4.2.2. <Location /perl> Sections
migrating mod_perl 1.0 to 2.0: 25.1.2. Migrating Configuration Files
migration compatibility: 25.1.1. The Shortest Migration Path
Options directives, merging: 4.1.6. Options Directive Merging
package naming and: 6.8.2.4.1. Writing configuration files
reloading: 6.8.2.4.2. Reloading configuration files
dynamic configuration files: 6.8.2.4. Using dynamic configuration files
sections
creating subgroups: 4.1.5. Subgrouping of <Directory>, <Location>, and <Files> Sections
merging: 4.1.4. Merging <Directory>, <Location>, and <Files> Sections
configuration parameters
supplying from file: 3.1.5. Reusing Configuration Parameters
upgrading servers: 3.1.5. Reusing Configuration Parameters
configuration variables, options for defining: 6.8.2.4.1. Writing configuration files
Configuration.custom file: 3.1.7. Using an Alternative Configuration File
conflicts, hardware: 8.2.8. Solving Hardware Requirement Conflicts
connect( ), Apache::DBI module and: 20.1.1. Apache::DBI Connections
connection input filter: 25.3.3.1. Bucket brigade-based connection input filter
connection phases: 25.2.2. Connection Phases
connections
Apache::DBI module: 20.1.1. Apache::DBI Connections
opening with different parameters: 20.1.5.3. Opening connections with different parameters
preopening: 20.2.1. Preopening DBI Connections
broken, cleanup code: 6.9.2. The Importance of Cleanup Code
closing, lingerd: 12.7.4. Closing Lingering Connections with lingerd
detecting broken
overview: 6.9. Handling the "User Pressed Stop Button" Case
tracing techniques: 6.9.1. Detecting Aborted Connections
proxypassed type: 12.7.2. Knowing the Proxypassed Connection Type
unique, Apache::DBI module and: 20.1.2. When to Use Apache::DBI (and When Not to Use It)
connect_on_init( ): 20.2.1. Preopening DBI Connections
constant pragma
debugging print( ) calls: 21.5.3. Using print( ) for Debugging
scalars and: 10.1.2.1. Variable unsharing caused by regular expressions
constructs, directives, Template Toolkit language: D.4.1. Simple Template Example
content delivery, XML and: E. The AxKit XML Application Server
content generation, modules: B. Apache Perl Modules
content handlers: 2.7. A Simple mod_perl Content Handler
(see also handlers)
converting mod_cgi script to: 6.7.2. Converting into a Perl Content Handler
converting to use mod_perl API: 6.7.3. Converting to use the mod_perl API and mod_perl-Specific Modules
content headers
content-length: 16.2.2. Content-Length Header
content-type header: 16.2.1. Content-Type Header
entity tags: 16.2.3. Entity Tags
content-length header: 16.2.2. Content-Length Header
content negotiation: 16.3. Content Negotiation
Vary header: 16.3.1. The Vary Header
content-type header: 16.2.1. Content-Type Header
content-type headers: 1.1.2. The Common Gateway Interface Specification
content_type( ): 16.2.1. Content-Type Header
continue command: 21.5.6. Introduction to the Perl Debugger
control and monitoring modules: B. Apache Perl Modules
B.3.1. Apache::Watchdog::RunAway—Hanging Processes Monitor and Terminator
cookies
AxKit: E.3.2. Handling Cookies
handling, recipe: A.5. Handling Cookies
mod_perl API and, sending multiple: A.6. Sending Multiple Cookies with the mod_perl API
REDIRECT responses and: A.7. Sending Cookies in REDIRECT Responses
copy-on-write, forking: 10.2. Forking and Executing Subprocessesfrom mod_perl
core dumps, troubleshooting Stronghold: 3.6.4. Installing mod_perl with Stronghold
core files, debugging
analyzing: 21.6.4. Analyzing the core File
dumping core file: 21.6.3. Dumping the core File
faulty packages, creating: 21.6.2. Creating a Faulty Package
preparation for: 21.6.1. Getting Ready to Debug
CORE:: package: 6.4.1. exit( )
CORE::dump( ): 21.6.2. Creating a Faulty Package
CPAN
interactive debugging: 21.5.9. Interactive mod_perl Debugging
trapping errors: 21.1.4. Displaying Errors to Users
web site: 2.2.2. Building mod_perl
2.9. References
CPAN.pm module: 2.2.2. Building mod_perl
mod+perl installation with: 3.7. Installing mod_perl with the CPAN.pm Interactive Shell
nonstandard Apache installation and: 3.9.6. Nonstandard mod_perl-Enabled Apache Installation with CPAN.pm
nonstandard installation directories and: 3.9.3. Using the CPAN.pm Shell with Nonstandard Installation Directories
CPU
fault tolerance: 8.2.6. Getting a Fault-Tolerant CPU
usage, limiting: 5.11.3. Limiting Resources Used by Apache Child Processes
critical sections
resource locking: 6.9.2.1. Critical section
safe locking: 6.9.2.2. Safe resource locking and cleanup code
croak( ) function: 21.1.2. Curing "Internal Server Error" Problems
cronlog web site: 5.12. References
crontab watchdogs: 21.7.3. Detecting Hanging Processes
cross-site scripting: 1.1.2. The Common Gateway Interface Specification
curinfo macro: 21.6.4. Analyzing the core File
custom handlers, performance compared to Apache::Registry: 13.1. Apache::Registry PerlHandler Versus Custom PerlHandler
cvrundiff( ), memory leaks and: 14.2.6. Memory Leakage
CVS (Concurrent Versions System)
information resources: 5.12. References
resources: 23.3.8. CVS
upgrading code on live servers: 5.8.2.2.7. Using CVS for code upgrades


Symbols & Numbers | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
Copyright © 2003 O'Reilly & Associates, Inc. All Rights Reserved.



[an error occurred while processing this directive]