Denali/Mt. McKinley and Brown Bear Software logo
Calcium Documentation - Apache & mod_perl
Horizontal Line

Apache Web Server, mod_perl, and Apache::Registry

mod_perl is a module you can plug into your Apache web server that can, among other things, make Perl CGI scripts run faster. For details, check out the Apache mod_perl web pages.

Calcium is compatible with mod_perl's Apache::Registry module. Configuring your web server to use Apache::Registry can make large Perl CGI scripts run much faster, particularly on slower machines.

Here are brief instructions for configuring your server to use Apache::Registry. Note that you will need to use a special version of Apache that includes mod_perl. Please see the many mod_perl docs at Apache for more details.

Add these sections to your Apache configuration file (usually httpd.conf):

Alias /perl/ "/usr/local/apache/cgi-bin/" <Location /perl> SetHandler perl-script PerlHandler Apache::Registry Options +ExecCGI </Location>

(If your Apache configuration doesn't already have it, you'll also need to add

PerlModule Apache::Registry before the <Location> section.)

Finally, you'll likely need to add some startup code to your Apache Perl setup, so it can find the Calcium files. Add something like this line to your Apache configuration file:

    Perlrequire  /usr/local/apache/conf/startup.pl

And put something like this in the specified file (startup.pl):

    use CGI qw(-compile :all);    
    use lib '/usr/local/Calcium3';
    use lib '/usr/local/Calcium3/upgrades';
    1;

Substitute, of course, the correct path to your Calcium support files if you don't have them installed in /usr/local/Calcium3

Remember to restart your web server after you change anything.

Finally, browse to Calcium using the 'perl' path, e.g. http://your.host/perl/Calcium3 instead of cgi-bin.