#!/usr/bin/perl -- use strict; use warnings; use CGI; Main(@ARGV); exit(0); sub Main { ... # CGI program here } #### package MyProgram; sub handler { CGI::initialize_globals(); # unneeded if using CGI->new ... # CGI program here } #### MyApp->new->run; #### Catalyst::ScriptRunner->run('MyApp', 'Apache');