RT 3.8.3 using https calls http URL on ticket update & create

I am seeing a problem seems similar to similar to a number of those highlighted on this list over the years, but it seems that my issue is a little to these and I unfortunately can’t solve it from the docs, mailing list or wiki, I’d much appreciate some help.

We have been running RT for about 5 years, and it is a super tool! We now run rt 3.8.3 with Apache 2.2.3 on CentOS 5.3 but also saw this problem on 3.8.2 - our goal is to run all connections using https over port 443, however in consistently repeatable circumstances the Create.html and Update.html pages call http URLs rather than https URLs. For example:

https://rt.oursystem.com/Ticket/Create.html?Queue=1
on clicking the “Create” button will call
http://rt.oursystem.com/Ticket/Display.html?id=34676&results=af515a64dc37b35fe521576b81eaad57

and

https://rt.oursystem.com/Ticket/Update.html?Action=Comment&DefaultStatus=resolved&id=34345
on clicking the “Update” button will call
http://rt.oursystem.com/Ticket/Display.html?id=34345&results=2e2bd8b836daf4250441eac1087b0411

Internally to our network this does not cause a problem as we have a RedirectPermanent in the httpd.conf and the http calls just redirect to the https URL, but for external connections only https is allowed through the firewall, so they of course fail. While we could bodge a fix by forwarding http through the firewall to - I really would rather not add an extra hole in the firewall. I do not see any coincident error messages in either the rt or httpd log files.

This is the contents of the RT_SiteConfig.pm:

Set( $rtname, ‘oursystem.com’);
Set($EmailSubjectTagRegex, qr/(?:oursystem.net|oursystem.com)/i);
Set($Organization , “oursystem.com”);
Set($Timezone , ‘Hongkong’);
Set($DatabasePassword , 'secret);
Set($WebDomain, ‘rt.oursystem.com’);
Set($WebPort, 443);
Set(@InactiveStatus, qw(resolved rejected deleted presales problem request cts_wip));
Set($LogToFile, ‘error’);
Set($LogToSyslog, ‘error’);
Set($LogToScreen, ‘error’);
Set($AutoLogoff, 120);

I have commented out the following just in case I had a typo in them and this operation is covered in the distributed RT_Config.pm - behaviour appears the same with them commented or uncommented:

#Set($WebBaseURL, ‘https://’ . RT->Config->Get(‘WebDomain’) . ‘:’ . RT->Config->Get(‘WebPort’));
#Set($WebURL, RT->Config->Get(‘WebBaseURL’) . “/”);

The VirtualHost definitions in httpd.conf look like this

NameVirtualHost *:80
NameVirtualHost *:443

<VirtualHost *:80>
ServerName rt.oursystem.com
RedirectPermanent / https://rt.oursystem.com/

<VirtualHost *:443>
ServerName rt.oursystem.com
ServerAdmin me@oursystem.com
DocumentRoot /opt/rt3/share/html
AddDefaultCharset UTF-8
PerlRequire /opt/rt3/bin/webmux.pl
<Directory /opt/rt3/share/html>
Order allow,deny
Allow from all
SetHandler perl-script
PerlResponseHandler RT::Mason

I would very much appreciate some guidance

Thanks

James