RT 3.0.10 on Debian testing

I’m currently installing RT on a debian system.

I’ve installed the request-tracker3 debian package (3.0.10-2), Apache
(apache2-mpm-worker 2.0.49-1),
libapache2-mod-perl2 1.99.12-3.

I followed the instructions included with the Debian package
(/usr/share/doc/request-tracker3/INSTALL.Debian.gz), and have
successfully created the database and run the initialization portion. I
also plan to run another site off of this server on the root directory,
and so have it setup (which works fine, just static pages currently).

The problem I am running into is with the perl/Apache setup. My current
setup serves file from the /var/www directory. I have added the "Include
“/etc/request-tracker3/apache-modperl.conf” line into my Apache setup,
and have linked /etc/apache2/mods-available/perl.load into
/etc/apache2/mods-enabled. I did have to move the “PerlRequire
/usr/share/request-tracker3/libexec/webmux.pl” line out of the
</> section since I was getting errors with mod_perl2.

After setting it up as such, I tried to access http://example.net
(domain names have obviously been changed), and got my static pages just
fine, but when I tried to go to http://example.net/rt, my browser
timed-out, and in the Apache logs, I get the following message:

[Sun May 16 11:51:25 2004] [error] [client 192.168.24.124] Attempt to
serve directory: /usr/share/request-tracker3/html/
That indicated to me that there was something wrong (permissions?),
and so I copied the directory in its entirety to the /var/www/rt and
removed the Alias directive. Then I was able to get the pages, but they
were not interpreted by perl, I just got the raw file dump in my
browser, which is the same thing that I got when I tried with apache1.

So, do I have some setting wrong, or are permissions not proper for my
/usr/share/request-tracker3 directory? (They are 755)

Thanks for any ideas and pointers,
Joel Johnson

Relevant config files:

THE BASICS:

Set($rtname, ‘Request Tracker’);
Set($Organization, ‘My Company’);

Set($CorrespondAddress , ‘rt@example.net’);
Set($CommentAddress , ‘rt-comment@example.net’);

Set($Timezone , ‘US/Mountain’); # obviously choose what suits you

THE DATABASE:

Set($DatabaseType, ‘Pg’); # e.g. Pg or mysql

These are the settings we used above when creating the RT database,

you MUST set these to what you chose in the section above.

Set($DatabaseUser , ‘dbuser’);
Set($DatabasePassword , ‘dbpass’);
Set($DatabaseName , ‘rt3’);

THE WEBSERVER:

Set($WebPath , “/rt”);
Set($WebBaseURL , “http://example.net”);

1;

I’m currently installing RT on a debian system.

I’ve installed the request-tracker3 debian package (3.0.10-2), Apache
(apache2-mpm-worker 2.0.49-1),
libapache2-mod-perl2 1.99.12-3.

The problem I am running into is with the perl/Apache setup. My current
setup serves file from the /var/www directory. I have added the "Include
“/etc/request-tracker3/apache-modperl.conf” line into my Apache setup,
and have linked /etc/apache2/mods-available/perl.load into
/etc/apache2/mods-enabled. I did have to move the “PerlRequire
/usr/share/request-tracker3/libexec/webmux.pl” line out of the
</> section since I was getting errors with mod_perl2.

I just took a look at this myself as I have apache2 on Debian testing
although I’ve not tried using it with RT3 before. I have made some
progress although I have not yet got it working. The
apache-modperl.conf needed a bit of a rewrite for apache2. This is
what I have right now:

PerlOptions +GlobalRequest
PerlModule Apache2
PerlModule Apache::compat
PerlSetVar MasonArgsMethod CGI

RewriteEngine On
RewriteRule ^(.*)/$ $1/index.html

Alias /rt /usr/share/request-tracker3/html/

PerlModule Apache::DBI
PerlRequire /usr/share/request-tracker3/libexec/webmux.pl

<Directory /usr/share/request-tracker3/html/>
AddDefaultCharset UTF-8
<FilesMatch “.html$”>
SetHandler perl-script
PerlHandler RT::Mason

Order Allow,Deny
Allow from 127.0.0.1

That is mostly taken from the upstream docs file
/usr/share/doc/request-tracker3/README.gz. You will need to enable the
rewrite module as well as perl for this config. It now gets beyond the
not being able to serve the directory problem and is stuck because it
cannot find the RT::Mason module. The errors I get are:

[Tue May 18 10:28:48 2004] [error] [client 163.1.15.107] Can’t locate RT/Mason.pm in @INC (@INC contains: /usr/local/share/request-tracker3/lib /usr/share/request-tracker3/lib /usr/lib/perl5/Apache2 /etc/perl /usr/local/lib/perl/5.8.3 /usr/local/share/perl/5.8.3 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl /usr/local/lib/perl/5.8.0 /usr/local/share/perl/5.8.0 . /etc/apache2/ /etc/apache2/lib/perl) at (eval 1939) line 3.\n

I do not know enough about Apache2 to sort this out although I will
keep trying anyone here had success with Apache2 and can tell me how
to fix this problem?

Thanks in advance,

Stephen Quinney

I’m currently installing RT on a debian system.

I’ve installed the request-tracker3 debian package (3.0.10-2), Apache
(apache2-mpm-worker 2.0.49-1),
libapache2-mod-perl2 1.99.12-3.

The problem I am running into is with the perl/Apache setup. My current
setup serves file from the /var/www directory. I have added the "Include
“/etc/request-tracker3/apache-modperl.conf” line into my Apache setup,
and have linked /etc/apache2/mods-available/perl.load into
/etc/apache2/mods-enabled. I did have to move the “PerlRequire
/usr/share/request-tracker3/libexec/webmux.pl” line out of the
</> section since I was getting errors with mod_perl2.

With a bit of hacking I now have a working RT3 with Apache2/mod_perl2
on Debian testing/sarge.

I had to do this:

cp /usr/share/request-tracker3/libexec/webmux.pl
/usr/share/request-tracker3/lib/RT/Mason.pm

and I made a /etc/request-tracker3/apache2-modperl.conf file like this:

PerlSwitches -I/usr/share/request-tracker3/lib/
PerlOptions +GlobalRequest
PerlModule Apache2
PerlModule Apache::compat
PerlSetVar MasonArgsMethod CGI

RewriteEngine On
RewriteRule ^(.*)/$ $1/index.html

Alias /rt /usr/share/request-tracker3/html/

PerlModule Apache::DBI
PerlModule RT::Mason

<Directory /usr/share/request-tracker3/html/>
AddDefaultCharset UTF-8
<FilesMatch “.html$”>
SetHandler perl-script
PerlHandler RT::Mason

Order Allow,Deny
Allow from localhost 163.1.15.107

This needs the perl and rewrite modules to be enabled.

Basically the PerlRequire was not working so I replaced it with a
change to the module include path and a PerlModule directive to
pre-load the module at start time. It all works fine now, although I
am not sure this is the most elegant solution. I don’t understand why
the PerlRequire is not working as it should, any suggestions are
welcome.

I will add an apache2-modperl.conf file into the next version of the
Debian request-tracker3 package that we upload along with notes as to
how I got RT3 working with Apache2/mod_perl2.

I hope this helps,

Stephen Quinney