Upgrade Stuck with "not compatible with PHP>=8.4" error

Hi Guys,

I’m really stuck trying to upgrade Nextcloud from 30.0.10 to anything higher.

I can’t do anything because I’m constantly getting the error:

This version of Nextcloud is not compatible with PHP>=8.4.
You are currently running 8.4.6.

Also, the updater is stuck on 30.0.10 and will not offer anything higher.

My updater pages show this:

Current version is 30.0.10.
Update to Nextcloud 30.0.10 available. (channel: “stable”)
Following file will be downloaded automatically: https://download.nextcloud.com/server/releases/nextcloud-30.0.10.zip

Looks like version 30.0.10 is trying to install 30.0.10 and that’s not helping.

Anybody got any ideas as to what I can try next?

Take a look at Releases and PHP versions.

How got you run Current version 30.0.10 with unsupported PHP-Version 8.4? Only Nextcloud 31 is supporting PHP-Version 8.4.

1 Like

Hi @milonic,

The message is cristal clear: You must downgrade your php to 8.3, since nc 30 does not support php8.4

Unfortunately you ignored the support template, so I don’t know what OS you are on, but if you are on a Ubuntu or Debian, you can do the downgrade without much hussle with the → php-updater script

h.t.h.


Much and good luck,
ernolf

1 Like

Hi Guys,

Thanks for the help, you definitely pointed me in the right direction.

This is on a Fedora 42 server - downgrading PHP was a good idea but I’m not sure it’s particularly trivial with Fedora. Never done it before and imagine it could cause all sorts of issues.

Anyway, I managed to figure it out by taking a snapshot of the server from back in March and running it on an identical machine. I then upgraded Nextcloud several times until it reached version 31.0.4.1 and then copied the newly updated files from the backup server to the live server.

I did get 500 error though which turned out to be Redis related. I removed these 3 lines from the config file and it seems to be running.

‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘memcache.distributed’ => ‘\OC\Memcache\Redis’,
‘memcache.local’ => ‘\OC\Memcache\Redis’,

Do I need memcache?

Many thanks,
Andy