Speedy cgi

after much diddling with the configs, I came up with the recipe to run
RT under Speedy

try number two, fumble fingers…

After much diddling about I finally came up with the recipe to run RT3
under SpeedyCGI (aka PersistentPerl).

Apache config:

LoadModule speedycgi_module libexec/apache2/mod_speedycgi.so
AddHandler speedycgi-script .scgi

<VirtualHost *>
ServerName support.example.com
DocumentRoot "/usr/local/rt3/share/html"
AddDefaultCharset UTF-8

Alias /bin/ "/usr/local/rt3/bin/"
<Location /bin>
    Options +ExecCGI
</Location>
Action text/html /bin/mason_handler.scgi

And here’s mason_handler.scgi:

–cut here–
#!/usr/local/bin/speedy

BEGIN LICENSE BLOCK# Copyright © 1996-2003 Jesse Vincent jesse@bestpractical.com

(Except where explictly superceded by other copyright notices)

This work is made available to you under the terms of Version 2 of

the GNU General Public License. A copy of that license should have

been provided with this software, but in any event can be snarfed

from www.gnu.org.

This work is distributed in the hope that it will be useful, but

WITHOUT ANY WARRANTY; without even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU

General Public License for more details.

Unless otherwise specified, all modifications, corrections or

extensions to this work which alter its source code become the

property of Best Practical Solutions, LLC when submitted for

inclusion in the work.

END LICENSE BLOCK

use strict;
require (’/usr/local/rt3/bin/webmux.pl’);

my $h = &RT::Interface::Web::NewCGIHandler();

require CGI;

RT::Init();

my $cgi = CGI->new;
unless ($h->interp->comp_exists($cgi->path_info)) {
$cgi->path_info($cgi->path_info . “/index.html”);
}
$h->handle_cgi_object($cgi);

1;
–cut here–

Cool. You gonna tell us what it is? :wink:
Or. better yet, send a patch so I can include it in 3.0.1.

Best,
JesseOn Fri, Mar 28, 2003 at 03:38:35PM -0500, Vivek Khera wrote:

after much diddling with the configs, I came up with the recipe to run
RT under Speedy


rt-devel mailing list
rt-devel@lists.fsck.com
http://lists.fsck.com/mailman/listinfo/rt-devel

http://www.bestpractical.com/rt – Trouble Ticketing. Free.

And a patch to sbin/rt-test-dependencies for SpeedyCGI support.

I’m running this on Apache2. Seems to be pretty darned fast. I don’t
even need to put the images on another vhost, since only the html
files are mason-processed. I haven’t done through testing, but a
bunch of clicking around gave some pretty normal looking results.

I didn’t make the mason_handler.scgi script setgid rt, but my www user
is in group rt so the config file is readable by it. this seems a
cleaner solution than setgid to me.

— rt-test-dependencies.in.dist Thu Mar 27 10:44:08 2003
+++ rt-test-dependencies.in Thu Mar 27 10:44:56 2003
@@ -34,7 +34,7 @@
use CPAN;
my %args;
my %deps;
-GetOptions(%args,‘install’, ‘with-MYSQL’, ‘with-POSTGRESQL|with-pg|with-pgsql’, ‘with-SQLITE’, ‘with-ORACLE’, ‘with-FASTCGI’, ‘with-MODPERL1’, ‘with-MODPERL2’ ,‘with-DEV’);
+GetOptions(%args,‘install’, ‘with-MYSQL’, ‘with-POSTGRESQL|with-pg|with-pgsql’, ‘with-SQLITE’, ‘with-ORACLE’, ‘with-FASTCGI’, ‘with-SPEEDYCGI’, ‘with-MODPERL1’, ‘with-MODPERL2’ ,‘with-DEV’);

if (!keys %args) {
help();
@@ -67,6 +67,7 @@
–with-oracle Database interface for oracle (unsupported)

--with-fastcgi		Libraries needed to support the fastcgi handler
  • –with-speedycgi Libraries needed to support the speedycgi handler
    –with-modperl1 Libraries needed to support the modperl 1 handler
    –with-modperl2 Libraries needed to support the modperl 2 handler

@@ -140,6 +141,11 @@
CGI
FCGI
CGI::Fast
+.
+$deps{‘SPEEDYCGI’} = [ _( << ‘.’) ];
+CGI
+CGI::SpeedyCGI
.