NodeWorx 500 Internal Server Error

InterWorx Version: InterWorx-CP v7.13.46-2845 (was previously on v7.13.45)
Distribution: AlmaLinux release 8.10 (Cerulean Leopard)
Operating System: Linux 4.18.0-553.16.1.el8_10.x86_64 (SMP)

In the last 2 hours I am unable to access NodeWorx and it is returning 500 Internal Server Error with a blank page.

Can SSH into server.
Server has enough disk space.
Server has enough memory.
Server has enough CPU.
MariaDB is running okay - have tried restarting.
The hosted websites are running okay.
Rebooted the server.
iWorx is running okay - have tried restarting.
Able to run nodeworx -u

Using the CLI to view InterWorx logs (error.log) and the following lines appear (which only started appearing 2 hours ago):

[Tue Aug 20 18:53:56.377688 2024] [ssl:info] [pid 12649] [client :60978] AH01964: Connection to child 1 established (server :2443)
[Tue Aug 20 18:53:56.381443 2024] [ssl:info] [pid 12648] [client :60977] AH01964: Connection to child 0 established (server :2443)
[Tue Aug 20 18:53:56.627231 2024] [:error] [pid 12649] [client :60978] FastCGI: server “/home/interworx/var/run/iworx-web.fcgi” stderr: PHP message: PHP Warning: require(/usr/local/interworx/vendor/phpmyadmin/motranslator/src/functions.php): failed to open stream: Permission denied in /usr/local/interworx/vendor/composer/autoload_real.php on line 73
[Tue Aug 20 18:53:56.627250 2024] [:error] [pid 12649] [client :60978] FastCGI: server “/home/interworx/var/run/iworx-web.fcgi” stderr: PHP message: PHP Warning: require(/usr/local/interworx/vendor/phpmyadmin/motranslator/src/functions.php): failed to open stream: Permission denied in /usr/local/interworx/vendor/composer/autoload_real.php on line 73
[Tue Aug 20 18:53:56.627254 2024] [:error] [pid 12649] [client :60978] FastCGI: server “/home/interworx/var/run/iworx-web.fcgi” stderr: PHP message: PHP Fatal error: require(): Failed opening required ‘/usr/local/interworx/vendor/composer/…/phpmyadmin/motranslator/src/functions.php’ (include_path=‘/usr/local/interworx/vendor/pear/archive_tar:/usr/local/interworx/vendor/pear/console_getargs:/usr/local/interworx/vendor/pear/console_getopt:/usr/local/interworx/vendor/pear/pear:/usr/local/interworx/vendor/pear/pear_exception:/usr/local/interworx/vendor/pear/structures_graph:/usr/local/interworx/vendor/pear/xml_parser:/usr/local/interworx/vendor/pear/xml_serializer:/usr/local/interworx/vendor/pear/xml_util:/usr/local/interworx/vendor/phpunit/phpunit-selenium:/usr/local/interworx/vendor/zendframework/zendframework1/library:/home/interworx/include:/home/interworx/lib/pear:/home/interworx/vendor/zendframework/zendframework1/library:/home/interworx/lib/smarty/libs:/home/interworx/lib/phpmailer:/home/interworx/lib/php-xmlrpc:/home/interworx/lib/sysinfo/includes’) in /usr/local/interworx/vendor/composer/autoload_real.php on line 73

Any help would be greatly appreciated.

Hi,

Have the same prob, seems to be a general problem?

Glad (not for the issue) but that it’s looking like a general problem - hopefully a fix soon.

It seems after a recent update everything broke, I cannot access Nodeworx admin, Sitworx or Webmail, they all end up in error 500 internal error.

Hello–

I was just about to write a forum post about this issue and how to easily resolve it, hoping to head folks off, but I was a little slow due to our internal troubleshooting, it seems. :slight_smile:

It looks like an odd issue where the quad_daily is checking for hotfixes, as it is expected to do, and it is seeing that a hotfix is available for 7.13.46.

As a result, it pulls in the new iworx version.

But the quad daily does not update the other packages such as roundcube, phpmyadmin, etc. It only updates interworx and interworx-hotfix. The the daily cron is what updates the extra packages.

7.13.46 expects phpmyadmin version 5.2.1. Since phpmyadmin was not updated, it still shows as 4.9.9:

[root@quadylupdatecheck ~]# rpm -q interworx
interworx-7.13.46-2845.iworx.noarch
[root@quadylupdatecheck ~]# rpm -q interworx-phpmyadmin
interworx-phpmyadmin-4.9.9-2820.iworx.noarch
[root@quadylupdatecheck ~]#

So we’re running into a timing mismatch. I’m working with the devs, currently, to see if there is a way to mitigate this, but there may not be.

In the meantime, though, this is a super easy fix, and should only affect servers until the next time the daily cron runs. Since the daily cron runs in the early-morning hours on most servers, any servers that may be affected by this will fix themselves in the next 12 hours or so.

But to fix it quickly, manually, just run:

yum update '*.iworx.*'

That will pull in the new phpmyadmin package, which will fix the GUI error.

Sorry about the inconvenience. Let me know if, for some reason, running the above does NOT fix the issue.

Thanks,
-Jenna
Friendly Neighborhood InterWorx Support Manager

2 Likes

Thank you for the quick feedback, running yum update '*.iworx.*' fixed it for me.

1 Like

@IWorx-Jenna thank you very much.

I can also confirm the following has fixed it for me.

yum update '*.iworx.*'

1 Like

Those of you on CentOS 7 without working repos may need to disable other repos in the above command. Like:

yum --disablerepo="*" --enablerepo interworx-7-base --enablerepo interworx-7-ga --enablerepo interworx-hotfix update *.iworx.*