"still uses the common gateway interface" is true in itself, but definitely not the complete truth.

With mod_perl you can have complete control over the handling of a request, allowing to forego the setting up of environment variables that are part of the CGI specification. Instead of environment variables, you have methods that can be called on a number of objects, representing the request, the connection, the configuration of the Apache server, etc,

And since there is no external program being called, there is no concept of piping information to/from that program (as specified in the Common Gateway Interface). Although stdout is usually tied to what will be sent to the browser.

The handling of the request can go pretty far: in mod_perl 2 it is even possible to have piece of Perl code executed before the connection is completed. This allows you to bar bad visitors from using any of your servers' resources, e.g. depending on IP-number.

Liz


In reply to Re: Re: thinking about mod_perl by liz
in thread thinking about mod_perl by geektron

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.