Blank screen after update to NC 25

Nextcloud version (eg, 20.0.5): 24.latest, upgrading to 25.0
Operating system and version (eg, Ubuntu 20.04): Ubuntu 20.04
Apache or nginx version (eg, Apache 2.4.25): Apache 2.4.54 running behind nginx 1.23.1 reverse proxy
PHP version (eg, 7.4): 8.0

The issue you are facing:
I’ve had no issues upgrading nextcloud for the last 20 or 30 times, so I’m fairly used to the process. This is the first time I’ve had a major issue.

Is this the first time you’ve seen this error? (Y/N): Y

Steps to replicate it:

  1. Run upgrade using upgrader.phar
  2. Visit login page. No login box is displayed.
  3. Visit dashboard on a browser already logged in: nothing to see. One letter on top right for user account. No menu, no text, no images on the normal dashboard.

The output of your Nextcloud log in Admin > Logging:

Nothing unusual in here. Normal upgrade messages only. 
And then nothing after upgrade had completed. 

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

$CONFIG = array (
  'instanceid' => 'sdfasdfasdf',
  'passwordsalt' => 'asdafasdf3QnjAq6P',
  'secret' => 'shhhhhhhhhh+ll6Rmnexj+YB',
  'trusted_domains' => 
  array (
    0 => '',
  'datadirectory' => '/home/user/web/',
  'dbtype' => 'mysql',
  'version' => '',
  'overwrite.cli.url' => '',
  'dbname' => 'db_nextcloud',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => 'db_nextcloudu',
  'dbpassword' => '8ddddddddYU',
  'installed' => true,
  'mail_from_address' => 'nextcloud',
  'mail_smtpmode' => 'sendmail',
  'mail_sendmailmode' => 'smtp',
  'mail_domain' => '',
  'maintenance' => false,
  'theme' => '',
  'loglevel' => 2,
  'memcache.local' => '\\OC\\Memcache\\Redis',
  'memcache.distributed' => '\\OC\\Memcache\\Redis',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'redis' => 
  array (
    'host' => '',
    'port' => 6379,
    'dbindex' => 1,
  'default_phone_region' => 'TH',

The output of your Apache/nginx/system log in /var/log/____:

Nothing in here. No 404s, no problems in error log. 

Output errors in nextcloud.log in /var/www/ or as admin user in top right menu, filtering for errors. Use a pastebin service if necessary.

Nothing in nextcloud.log after upgrade has completed. 

Symptoms. No text, images, menus appear on web login. CalDAV sync with Thunderbird is still working. File sync with Nextcloud Desktop is still working.
Have checked file permissions and ownership. All dirs are chmod 755. All files are chmod 644. Have even tried 664.
Redis is working: have checked with redis-cli
Nothing changed on the server between before and after upgrade. Same PHP, APache, config.
Have cleared browser caches, used alternate browser. Rebooted server.
Now have run out of ideas.

I rolled back to last 24 backup. That works (except images missing from contacts – probably unrelated issue). I re-tried the upgrade. Breaks again. Nothing useful in logs.

Tried adding localhost to the trusted domains array. No change.
Tried changing overwrite.cli.url to http://localhost but no change.
Tried using square bracket array format. No change.

Managed to go to the admin interface by pasting the URL directly into the browser (no menu links to follow). In the admin interface, I can see the left menu (plain text only, suggesting css/theme problem), but still no top menu.
Some occ commands were suggested. Ran them, without improvement. Now just left with the admin screen telling me I don’t have cache enabled, when I do, as per config above. But anyway, even with cache disabled, I’d still be able to see the menus. So … theme problem perhaps?

Is the theming app enabled on your instance?

It was. Disabled it with
php occ app:disable theming
Now I can see a nasty bright cloud background. But still no menus, text, or icons. Dashboard is blank.

OK, disabled a few more apps (photos, files_external) that I wasn’t using. Cleared browser cache. Got a bit of css formatting back. Switched to browser which has never accessed that URL before and now login box is back, and menu icons at the top.
OK, so it seems the themeing app was to blame. Thanks for that.

Could you please tell me how to execute this command?

I get this error:
Console has to be executed with the user that owns the file config/config.php
Current user id: 0
Owner id of config.php: 99
Try adding ‘sudo -u #99’ to the beginning of the command (without the single quotes)
If running with ‘docker exec’ try adding the option ‘-u 99’ to the docker command (without the single quotes)

Sadly adding “-u 99” does not help :frowning:

Same issue here. It just that I’m using PHP 7.4.3, but the upgrade brakes.
The interesting bit is that when I reverted back to 24.7 it worked, but upon copying my “old” apps folder within the newly installation I again received the blank screen.
At the end I’ve managed to upgrade by doing the following, keep in mind that I primarily use few plugins and store not that many files.

  1. Downloaded the app zip
  2. Backuped my old server dir
  3. Unzipped version 25
  4. Renamed the unzipped folder to my old server dir.
  5. Changed ownership and permission
  6. Ran php occ upgrade
    6.1 Ran: php occ maintenance:mode --off
  7. Copied the data folder from the backup(again changed permissions)
  8. Installed the apps I was using previously.

Same with me, blank screen after Upgrade from to 25.0.2

I solved it by executing
occ upgrade

as disabling the theming with “occ app:disable theming” did not work because of error
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see
Additionally the function ‘pcntl_signal’ and ‘pcntl_signal_dispatch’ need to be enabled in your php.ini.
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
theming can’t be disabled.

occ upgrade fixed it for me - thank you for the suggestion @cw4u

SSH to your nextcloud root and run:

sudo -u www-data php occ upgrade

Thanks 51n7! Finally managed to get this little nightmare solved. It seems the upgrade should not execute if there are upgrade requirements like this…it’s a bit frustrating to have a browser based upgrade result in an inaccessible site. :frowning: Back in business now thanks to help here on the forums but…again…shouldn’t the browser based upgrade be designed to avoid issues like this? e.g. if required environment is not present, upgrade stops. That is behavior I’ve observed elsewhere. Just an idea. :wink: