[request-tracker-maintainers] Bug#440041: request-tracker3.6: not just ssl proxy problem
Geoff Crompton
geoff.crompton at strategicdata.com.au
Mon Sep 17 00:16:05 UTC 2007
Package: request-tracker3.6
Version: 3.6.1-4
Followup-For: Bug #440041
We've run into the same problem. In our case we had two front ends, and SSL
proxy for Internet access, and a normal port 80 frontend for use within the
office, which both showed the same problem. Our backend ran on a high port.
So our redirects go to this high port number.
Causing further confusion, we had our firewall portforwarding from tcp port
443 to tcp port 442, which is where our frontend SSL service was listening.
We found this link, which helped a little:
http://www.gossamer-threads.com/lists/rt/users/61508?search_string=redirect;#61508
So my boss found a patch in the RT bug database, and a work around for us.
Apparently there are multiple issues going on. If you run an SSL frontend
and a non-SSL backend, you have one issue, if you run the frontend on a
different port you have another issue, and if you run the frontend on a
different port to what the web request goes to (because of the linux firewall
port forward), you have a third issue. I think.
Our patch says to use a config variable if it's defined (RT::CanonicalRedirect, which we've defined in our RT_SiteConfig.pm). But during developing the patch
my boss also altered inside the if statement, to fix the https/http problem.
$ diff -u Web.pm Web.pm.patched
--- Web.pm.orig 2007-09-17 09:57:44.333228924 +1000
+++ Web.pm.long.patched 2007-09-17 09:59:58.496618242 +1000
@@ -190,11 +190,20 @@
# If the user is coming in via a non-canonical
# hostname, don't redirect them to the canonical host,
# it will just upset them (and invalidate their credentials)
- if ($uri->host eq $server_uri->host &&
- $uri->port eq $server_uri->port) {
- $uri->host($ENV{'HTTP_HOST'});
- $uri->port($ENV{'SERVER_PORT'});
+ # unless they have explicitly requested this with $RT::CanonicalRedirect.
+ if ( ( !defined $RT::CanonicalRedirect || $RT::CanonicalRedirect == 0 )
+ && $uri->host eq $server_uri->host
+ && $uri->port eq $server_uri->port )
+ {
+ if ( $ENV{'HTTPS'} eq 'on' ) {
+ $uri->scheme('https');
+ }
+ else {
+ $uri->scheme('http');
}
+ $uri->host( $ENV{'HTTP_HOST'} );
+ $uri->port( $ENV{'SERVER_PORT'} );
+ }
$HTML::Mason::Commands::m->redirect($uri->canonical);
$HTML::Mason::Commands::m->abort;
-- Package-specific info:
Changed files:
There are locally modified files in /usr/local/share/request-tracker3.6/,
these may (or may not) be the source of the problem.
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-5-686
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Versions of packages request-tracker3.6 depends on:
ii libapache-session-perl 1.81-1 Perl modules for keeping persisten
ii libcache-cache-perl 1.05-2 Managed caches of persistent infor
ii libcache-simple-timedexpiry- 0.26-1 Perl module to cache and expire ke
ii libcalendar-simple-perl 1.17-2 Perl extension to create simple ca
ii libclass-returnvalue-perl 0.53-1 A return-value object that lets yo
ii libdbd-mysql-perl 3.0008-1 A Perl5 database interface to the
ii libdbd-pg-perl 1.49-2 a PostgreSQL interface for Perl 5
ii libdbd-sqlite3-perl 1.13-1.1 Perl DBI driver with a self-contai
ii libdbi-perl 1.53-1 Perl5 database interface by Tim Bu
ii libdbix-searchbuilder-perl 1.45-2 Encapsulate SQL queries and rows i
ii libexception-class-perl 1.21-1 a module that allows you to declar
ii libfcgi-perl 0.67-2 FastCGI Perl module
ii libfreezethaw-perl 0.43-3 converting Perl structures to stri
ii libgd-graph-perl 1.43.08-2.1 Graph Plotting Module for Perl 5
ii libgd-text-perl 0.86-3.1 Text utilities for use with GD
ii libhtml-mason-perl 1:1.35-3 HTML::Mason Perl module
ii libhtml-parser-perl 3.55-1 A collection of modules that parse
ii libhtml-scrubber-perl 0.08-3 Perl extension for scrubbing/sanit
ii liblocale-maketext-fuzzy-per 0.02-2 Maketext from already interpolated
ii liblocale-maketext-lexicon-p 0.62-1 Lexicon-handling backends for "Loc
ii liblog-dispatch-perl 2.11-1 Dispatches messages to multiple Lo
ii libmailtools-perl 1.74-1 Manipulate email in perl programs
ii libmime-perl 5.420-0.1 Perl5 modules for MIME-compliant m
ii libmldbm-perl 2.01-1 Store multidimensional hash struct
ii libmodule-versions-report-pe 1.02-3 Report versions of all modules in
ii libparams-validate-perl 0.77-1 validate parameters to Perl method
ii libregexp-common-perl 2.120-4 Provide commonly requested regular
ii libterm-readkey-perl 2.30-3 A perl module for simple terminal
ii libtest-inline-perl 2.103-1 Perl extension for embed tests and
ii libtext-autoformat-perl 1.13-1 Perl module for automatic text wra
ii libtext-quoted-perl 1.8-3 Extract the structure of a quoted
ii libtext-template-perl 1.44-1.1 Text::Template perl module
ii libtext-wikiformat-perl 0.78-0.1 translates Wiki formatted text int
ii libtext-wrapper-perl 1.000-2 Simple word wrapping routine
ii libtime-modules-perl 2003.1126-2 Various Perl modules for time/date
ii libtree-simple-perl 1.17-1 A simple tree object
ii libuniversal-require-perl 0.10-1 Load modules from a variable
ii libxml-rss-perl 1.05-1 Perl module for managing RSS (RDF
ii libxml-simple-perl 2.14-5 Perl module for reading and writin
ii perl 5.8.8-7 Larry Wall's Practical Extraction
ii postfix [mail-transport-agen 2.3.8-2+b1 A high-performance mail transport
ii rt3.6-apache2 3.6.1-4 Apache 2 specific files for reques
ii rt3.6-clients 3.6.1-4 Mail gateway and command-line inte
ii sysklogd [system-log-daemon] 1.4.1-18 System Logging Daemon
Versions of packages request-tracker3.6 recommends:
ii mysql-server-5.0 [mysql-se 5.0.32-7etch1 mysql database server binaries
-- no debconf information
More information about the pkg-request-tracker-maintainers
mailing list