Upgrade stuck at "Step 4 is currently in process. Please reload this page later"

I had the same issue. Here’s what I did to get the web updater to finish properly…

Edited the config file on the server to remove maintenance mode.

Removed the .step file in the /data/updater…/ folder.

Changed some PHP parameters on the hosting as follows:-

  • note * running PHP 5.6.35 under fastcgi / apache.
  • max_execution_time 120 seconds
  • max_input_time 90 seconds

From the admin page, re-run the update. It then went through without error.


Ran into this today trying to go from 13.0.6 to 14.0.1

It needs to RESUME the download rather than starting over every time. I don’t know what PHP timeout my server needs but 180 seconds wasn’t enough to get the whole zip from the NC servers and I imagine this would happen to anyone when the NC servers are loaded.

1 Like

I just had the same issue.

In my case

  • setting max_execution_time to 3600
  • setting max_input_time to 3600 (both in php.ini)
  • sudo -u www-data php occ maintenance:repair

made it possible to restart and finish the update.

1 Like

Where can I find the php.ini file?
Searching for it only brings a result for php.ini in the qownnotes folder!!

Where it is will depend on your OS, in my case it was in:


You can also try running “locate php.ini” to find where it may be on your system.

1 Like

This was the fix for me. In my case I’m using the linuxserver.io Docker image (https://hub.docker.com/r/linuxserver/nextcloud/), so the file to edit is config/php/php-local.ini, e.g.:

; Edit this file to override php.ini directives and restart the container

; date.timezone =
memory_limit = 512M
max_execution_time = 120
max_input_time = 90


  • sudo -u www-data php occ maintenance:repair

works for me to, but I need to use:

  • sudo -u www-data php7.2 occ maintenance:repair

Here is the workflow that helped me with this problem.

After the download failed I downloaded the file (in my case nextcloud-18.0.7.zip) manually.
Then I replaced the incomplete file in the directory data/updater-xxxxxxxxxxxxx/downloads/ via FTP with the complete one.
I updated the file data/updater-xxxxxxxxxxxxxxx/.step as follows:
{"state": "end", "step":4}

Afterwards I could reload the page with the update and continue the update at step 5.


Nice. Perhaps in further releases the updater can check the downloads-dir, check the checksum and skip the download.

1 Like

Checking/Modifying the “.step”-file is a good catch. Yet in my case, “.step” contained just that – but re-downloaded the ZIP anyway. The updater really should try to resume prior to reload.

This works for me upgrading from 18.0.4 to 18.0.10. Thanks.

Why is this post marked as “solution”? :slight_smile:

Make sure your webserver gives PHP enough time to download the update file.
For nginx this would be in nginx.conf:

http {
    proxy_connect_timeout  600s;
    proxy_send_timeout  600s;
    proxy_read_timeout  600s;
    fastcgi_send_timeout 600s;
    fastcgi_read_timeout 600s;

The PHP settings mentioned above still apply of course.

press F5/reload the page with resubmit form data and it should work as normal as long as the download has finished, that’s what I’ve been doing for years to get around this oddball updater.

1 Like

I’m realizing that I never accepted a Solution to this! If you’re encountering the problem on a shared webhost like Dreamhost, the solution is definitely to update manually.

I have problems with the updater every time I upgrade. I wonder if no one else has this problem and why it is still an issue. same situation as above, the app stalls at a certain point and I need to do some kind of manual fix to delete a file or other. I have tried increasing time outs where possible, but I am on a shared host so it is not always possible. Why can there not be a simpler solution? just download the new version, put it in a directory and go. I dont need a backup, can skip the version checks on the new version .zip. I just need it to update without taking 2 days to finally luck on to a final step. this time it kaks at extracting, done it 3 times. it has made 6 backups so my storage is full and need to delete with filezilla. really at my end with this. Is there a better way? If need to do manual, what is the point in a update app?

The update app works under “ideal” circumstances only.
And the biggest unknown here is the NC update server bandwidth availability.
So, trying the update app during the first week of a new release is a bad idea…

In short, do it from the command line and forget about the app…

saved me - thanks.

some reason I have slow connection speed to NC release server so my download was timing out. not directly related to the original post, but this fixed my issue after manually uploading the zip to the download folder.

Same issue. Solution worked perfectly for my upgrade from 22.2.6 to 23.0.3
Thanks !

After many upgrades, I think I kind of understood why it says “Step X is currently in progress”…
and that is because… it IS in progress.
Just allow some minutes, reload the page (F5 or Ctrl+r on firefox), and proceed to the next step. At least this is what happens to me.

Just for the record, my nextcloud instances are on shared hosting (ovh).

What happens more often than not is that after the upgrade process reaches the end and I’m brought to the homepage to finish the routine, it encounters another error and I have to go to the command line and use php occ upgrade to solve. But I think this is another issue.

Hope this helps.