Rt server.service inactive after reboot? How to start it?

I am working on setting up my RT and the worst thing happened. I am to present my setup as a school project tommorow and for some reason after rebooting my debian 11 server, suddenly the RT server does not start. RT socket works and is active, but :

● rt-server.service - RT FCGI server
Loaded: loaded (/etc/systemd/system/rt-server.service; static)
Active: inactive (dead)
TriggeredBy: ● rt-server.socket

I have been searching but found nothing about the problem. I have not changed my Server settings, but they resemble what can be seen at ManualInstallation - Request Tracker Wiki regarding setting up server.service.

Please, help would be very appreciated

Haha typically people avoid rebooting servers unless they have to!

Which webserver are you using?

Apache2 ran on debian 11

What do the Apache logs say?

I cannot find anything specific in apache logs, can you point me ? I searched for rt in apache logs with grep but found nothing, I also checked my debug log I have set in RT_SiteConfig but it does not seem to mention anything regarding the web server not starting

What if you restart Apache? You can also turn off Apache and run rt manually to see if there is a hint /opt/rt5/sbin/rt-server

I got following hints:

Argument “” isn’t numeric in numeric eq (==) at /opt/rt5/etc/RT_Config.pm line 1920.

[3686] [Wed Jun 15 14:27:03 2022] [error]: The WebPath config option requires a leading slash (/opt/rt5/sbin/…/lib/RT/Config.pm:1089)

[3686] [Wed Jun 15 14:27:03 2022] [error]: You must set the WebPort config option (/opt/rt5/sbin/…/lib/RT/Config.pm:1129)

I have thought Config.pm is not important as SiteConfig rewrites it and I have not even made a changes to configs inside sbin files? I will try to debug these, but I would love to hear your input

The important bits are these two:

[3686] [Wed Jun 15 14:27:03 2022] [error]: The WebPath config option requires a leading slash (/opt/rt5/sbin/…/lib/RT/Config.pm:1089)

[3686] [Wed Jun 15 14:27:03 2022] [error]: You must set the WebPort config option (/opt/rt5/sbin/…/lib/RT/Config.pm:1129)

What do you have for those configs?

1 Like

the first hint regards this part of RT_Config:

my $port = RT->Config->Get(‘WebPort’);
Set($WebBaseURL,
($port == 443? ‘https’: ‘http’) .’://’
. RT->Config->Get(‘WebDomain’)
. ($port != 80 && $port != 443? “:$port” : ‘’)
);

I have not really touched the original Config and I have deleted WebBaseURL opinion from my SiteConfig.pm

Check for WebPath and WebPort

1 Like

I checked it and those were just logic files, so I went ahead and supplied (meaning I wrote them in RT_SiteConfig.pm) what they ask for, that was WebPort (I have tried 443 but also 5000) and also set my webpath to “” as my app should show up on the root domain path. Tried to start standalone server again, got no errors but also no output, meaning nothing changed and if I went to browser and entered my url:port, the connection timed out. Tried restarting apache and RT socket too, but still RT socket is active but server is inactive.

I dont know whether it is important, but I am using HSTS. All http is redirected to https

I don’t totally follow this, but blank for WebPath seems fine to me and the port value being set is good. Do you have RT log level set to debug?

Set( $LogToSTDERR, "debug" );

What I meant by logic files is that those lines were pointing to the error definition, stating this:

    if ($value !~ m{^/}) {
            $RT::Logger->error("The WebPath config option requires a leading slash");
        }

So I went ahead and tried to fix it as mentioned.
Yes I log debug to a specific file with:

Set($LogToFile, ‘debug’);
Set($LogToFileNamed, ‘rt5.log’);
Set($LogDir, ‘/var/log/rt5’);

I can also set it on STDERR, which is currently set to warning, if STDERR logs make a difference. I am not sure what should I then initiate though to replicate/ get an error message on why is rt server service not starting. I am thinking reboot but let me know if there are other options haha

I wouldn’t reboot, you should just be able to try to hit your servers URL/IP at the port RT is running on

[Wed Jun 15 17:23:55.134207 2022] [proxy:error] [pid 5183] (111)Connection refused: AH00957: http: attempt to connect to 127.0.0.1:3000 (localhost) failed
[Wed Jun 15 17:23:55.134264 2022] [proxy_http:error] [pid 5183] [client 146.102.116.102:5790] AH01114: HTTP: failed to make connection to backend: localhost

This is the log I got after connecting to my domain. 127.0.0.1:3000 is the adress of the unactive RT server service

I have thought it might have something to do with the rt server.service and rt socket settings but they are set by the ManualInstallation in RTWiki, link in original post.

I am thinking, in case somehow something got corrupt, would redoing make installl cleanly reinstall the app or would it bring about issues?

So I think FastCGI is kind of old and fcgid with Apache is the better way to run RT web server:
https://docs.bestpractical.com/rt/5.0.2/web_deployment.html#mod_fcgid

Solved by adding rt-server.service into systemd, not using the rt socket at all.