RT 3.8.10 and 4.0.1 in apache vritual hosts - possible?

I’ve been struggling to get two instances of RT running on the same
server. One is our current 3.8.10 and the other is a proposed migration
to 4.0.1.

I am installing from source.

I’m finding that since FastCGI in apache is configured at the server level
and not at the virtual host level, and 3.8 and 4.0 use different fastCGI
handlers, I can get one running and not the other.

I have the databases, paths, etc. straight. I can enable one or the other
but not both; one always crashes with 500 - internal server error.

Does anyone have any hints on how to make this work? Or is it just
impossible?

I’m finding that since FastCGI in apache is configured at the server level
and not at the virtual host level, and 3.8 and 4.0 use different fastCGI
handlers, I can get one running and not the other.

I have the databases, paths, etc. straight. I can enable one or the other
but not both; one always crashes with 500 - internal server error.

Does anyone have any hints on how to make this work? Or is it just
impossible?

It’s not impossible. We did it with our internal RTs for a while.
Don’t configure FastCGI at the server level, configure it at the vhost
level. Show us some apache configs.

You said you’re installing from source, but previously you said you’re
installing from Debian packages…

Thomas

I’m finding that since FastCGI in apache is configured at the server level
and not at the virtual host level, and 3.8 and 4.0 use different
fastCGI handlers, I can get one running and not the other.

I have the databases, paths, etc. straight. I can enable one or the other
but not both; one always crashes with 500 - internal server error.

Does anyone have any hints on how to make this work? Or is it just
impossible?

It’s not impossible. We did it with our internal RTs for a while. Don’t
configure FastCGI at the server level, configure it at the vhost level.
Show us some apache configs.

You said you’re installing from source, but previously you said you’re
installing from Debian packages…

I could not sort out the Debian package install. I got into a mess with
databases and ended up removing all the packages to see if I could do
better with the tarballs.

Right now I have RT4 running fine. RT3 is throwing an error:

[Wed Aug 10 08:37:50 2011] [error] [client 10.1.14.15] failed to resolve
handler `RT::Mason’: Can’t locate RT/Mason.pm in @INC (@INC contains:
/opt/rt4/sbin/…/local/lib /opt/rt4/sbin/…/lib /etc/perl
/usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10
/usr/local/lib/site_perl . /etc/apache2) at (eval 1132) line 3.\n

which indicates a misconfiguration at the perl level. make testdeps says
everything is OK.

RT3 virtual host:

root@svr-rt:/etc/apache2/sites-available# cat rt3
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName rt

DocumentRoot /opt/rt3/share/html
AddDefaultCharset UTF-8

# optional apache logs for RT
ErrorLog /opt/rt3/var/log/apache2.error
TransferLog /opt/rt3/var/log/apache2.access

PerlRequire “/opt/rt3/bin/webmux.pl”

  SetHandler /opt/rt3/bin/mason_handler.fcgi
  AddHandler fastcgi-script fcgi
  ScriptAlias / /opt/rt3/bin/mason_handler.fcgi/

<Location /NoAuth/images>
    SetHandler default
</Location>
<Location />
    SetHandler perl-script
    PerlResponseHandler RT::Mason
</Location>

RT4 Virtual Host

root@svr-rt:/etc/apache2/sites-available# cat rt4
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName tracker

DocumentRoot /opt/rt4/share/html
AddDefaultCharset UTF-8

# optional apache logs for RT
ErrorLog /opt/rt4/var/log/apache2.error
TransferLog /opt/rt4/var/log/apache2.access

PerlRequire “/opt/rt4/bin/webmux.pl”

  SetHandler /opt/rt4/sbin/rt-server.fcgi
  AddHandler fastcgi-script fcgi
  ScriptAlias / /opt/rt4/sbin/rt-server.fcgi/


<Location /NoAuth/images>
    SetHandler default
</Location>
<Location />

Order allow,deny
Allow from all

AddDefaultCharset UTF-8

SetHandler perl-script
PerlResponseHandler Plack::Handler::Apache2
PerlSetVar psgi_app /opt/rt4/sbin/rt-server

use Plack::Handler::Apache2; Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");

I’m a bit rusty at all this stuff; my own apache server has been running
for years without a glitch and I’m just now coming back to this after a
few years away. It’s a re-learning curve…

My daughter is racing a triathlon to raise money for her swim club. Want
to help?

I’m finding that since FastCGI in apache is configured at the server level
and not at the virtual host level, and 3.8 and 4.0 use different
fastCGI handlers, I can get one running and not the other.

I have the databases, paths, etc. straight. I can enable one or the other
but not both; one always crashes with 500 - internal server error.

Does anyone have any hints on how to make this work? Or is it just
impossible?

It’s not impossible. We did it with our internal RTs for a while. Don’t
configure FastCGI at the server level, configure it at the vhost level.
Show us some apache configs.

You said you’re installing from source, but previously you said you’re
installing from Debian packages…

I could not sort out the Debian package install. I got into a mess with
databases and ended up removing all the packages to see if I could do
better with the tarballs.

Right now I have RT4 running fine. RT3 is throwing an error:

[Wed Aug 10 08:37:50 2011] [error] [client 10.1.14.15] failed to resolve
handler `RT::Mason’: Can’t locate RT/Mason.pm in @INC (@INC contains:
/opt/rt4/sbin/…/local/lib /opt/rt4/sbin/…/lib /etc/perl
/usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10
/usr/local/lib/site_perl . /etc/apache2) at (eval 1132) line 3.\n

which indicates a misconfiguration at the perl level. make testdeps says
everything is OK.

RT3 virtual host:

You appear to be mixing mod_perl and fastcgi between the two hosts.
Pick one and go with it.

-kevin

You can’t run rt3 and rt4 under the same Port(80) and path(/).
Change the port or the path of the rt4 apache config.Am 10.08.2011 17:44, schrieb Yan Seiner:

RT3 virtual host:

root@svr-rt:/etc/apache2/sites-available# cat rt3
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName rt

DocumentRoot /opt/rt3/share/html
AddDefaultCharset UTF-8

# optional apache logs for RT
ErrorLog /opt/rt3/var/log/apache2.error
TransferLog /opt/rt3/var/log/apache2.access

PerlRequire “/opt/rt3/bin/webmux.pl”

  SetHandler /opt/rt3/bin/mason_handler.fcgi
  AddHandler fastcgi-script fcgi
  ScriptAlias / /opt/rt3/bin/mason_handler.fcgi/

<Location /NoAuth/images>
    SetHandler default
</Location>
<Location />
    SetHandler perl-script
    PerlResponseHandler RT::Mason
</Location>

RT4 Virtual Host

root@svr-rt:/etc/apache2/sites-available# cat rt4
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName tracker

DocumentRoot /opt/rt4/share/html
AddDefaultCharset UTF-8

# optional apache logs for RT
ErrorLog /opt/rt4/var/log/apache2.error
TransferLog /opt/rt4/var/log/apache2.access

PerlRequire “/opt/rt4/bin/webmux.pl”

  SetHandler /opt/rt4/sbin/rt-server.fcgi
  AddHandler fastcgi-script fcgi
  ScriptAlias / /opt/rt4/sbin/rt-server.fcgi/


<Location /NoAuth/images>
    SetHandler default
</Location>
<Location />

Order allow,deny
Allow from all

AddDefaultCharset UTF-8

SetHandler perl-script
PerlResponseHandler Plack::Handler::Apache2
PerlSetVar psgi_app /opt/rt4/sbin/rt-server

use Plack::Handler::Apache2; Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server");