Skip to Content
Developing Web Applications with Perl, memcached, MySQL® and Apache
book

Developing Web Applications with Perl, memcached, MySQL® and Apache

by Patrick Galbraith
July 2009
Intermediate to advanced
887 pages
21h 8m
English
Wrox
Content preview from Developing Web Applications with Perl, memcached, MySQL® and Apache

Chapter 15. More mod_perl

In Chapter 14, you saw just how versatile mod_perl handlers are and how they can be used within the various phases of the server life cycle as well as HTTP request phase cycle. Most often, you will be most concerned with developing applications for the HTTP response phase. This chapter focuses on providing examples for this phase.

mod_perl Handlers or ModPerl::Registry?

You saw in Chapter 14 how to easily use ModPerl::Registry to convert the contact list CGI application to mod_perl application. In most cases, if you have a lot of code written as a ModPerl::Registry program, this should suffice for what you want to do. ModPerl::Registry essentially turns your script into a mod_perl handler, though it's worth considering the steps that that ModPerl::Registry has to perform. These steps include the following:

  • Create a namespace derived from the filename.

  • Check if the script should be compiled, depending on whether it is in the cache, as well as whether it was modified. If there is no need for it to be compiled, skip to execution.

  • If it is not in cache, a check is made to determine if the script was allowed to be executed and can be compiled (if Options ExecCGI is set, which is the Apache configuration file for the directory the script is in).

  • The process changes its current working directory from the server root directory to the directory where the script exists.

  • Read in the script, stripping various components, including the options in the shebang #!/usr/bin/perl ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Expert PHP and MySQL®

Expert PHP and MySQL®

Andrew Curioso, Ronald Bradford, Patrick Galbraith
PHP 7: Real World Application Development

PHP 7: Real World Application Development

Doug Bierer, Altaf Hussain, Branko Ajzele
Perl by Example

Perl by Example

Ellie Quigley
Mastering PHP 7

Mastering PHP 7

Branko Ajzele

Publisher Resources

ISBN: 9780470414644Purchase book