How to Fix WordPress Stuck in Maintenance Mode

Updated on Feb 28, 2020

WordPress maintenance mode is a WordPress core feature that’s enabled when you update the version of WordPress or while updating plugins and themes. The CMS displays a message across your website that lets visitors know you’re working on something. This way, you can perform updates without forcing them to use a semi-broken site.

This post is to explain how to manually get out of the unwanted WordPress maintenance mode in case your site gets stuck in it. You might be wondering what it is and why it’s happening.

We will cover:

What Causes WordPress Maintenance Mode Issues?

Anytime you update your plugins and themes, WordPress maintenance mode would kick in, displaying a message that says your site is temporarily unavailable. The updates take only a few seconds and are too brief to be noticed. However, sometimes, the process would get interrupted. This hiccup could come from errors in server connection, or when a browser or a page was closed while the update was going on. Whatever the case is, the solutions for this issue are two.

Possibility 1: The .maintenance File Still Exists in the Site's Root Folder

Typically, this would be the main reason in case the maintenance mode is stuck. What you need to do is access your server via FTP software like FileZilla, or by using the File Manager in your cPanel (cPanelFile Manager). 

How to Delete the .maintenance File in cPanel

cPanel is not the only existing control panel, but it’s probably the most popular one. If you are one of our clients, you already know that we are one of the hosting providers that use cPanel. To delete the .maintenance file in cPanel, follow these steps:

  • Log into your cPanel and scroll down to find File Manager. By default, many file managers hide all files that have a dot prefix, thus you have to make sure that those hidden files are showing, so you can find the .maintenance file. Go to Settings and check the box Show Hidden Files (dotfiles):
    Check Show Hidden Files in cPanel
  • In File Manager, you need to select Web Root (public_html). If working on an addon domain, the folder's name would be the same as the addon domain name.
  • Open public_html. Doing it would take you directly to the location of your .maintenance file;
  • Find it, delete it, and then refresh your browser with your WordPress site open to see if the message is still there;
  • In case the pop-up doesn't appear when you click on File Manager, and if you don't see dot files in your public_html directory, you have to go back to cPanel, scroll down to the bottom, and then click Reset All Interface Settings;
  • Refresh the page and try again. Clear the cache of your browser if it still doesn’t work.

How to Delete the .maintenance File via FileZilla

An FTP Client is a file manager that you can use on your local device. By default, it comes with more features than the file managers that are available through hosts. FastComet recommends using FileZilla, as does WordPress. To delete the .maintenance file with FileZilla, follow these steps:

  • After you have the FileZilla installer, open it and go to FileSite Manager;
  • You will need to know your FTP details. Typically, it would be the username and password that you use to access your website’s file manager, but if you are not sure, ask your host;
  • Click on New Site. Make sure you select the General tab and configure the following settings:
Host – Enter your domain (e.g., example.com) Port – Leave it blank; 
Protocol – FTP (File Transfer Protocol);
Encryption – Only use plain FTP;
Login Type – Normal;
User – FTP username from the host;
Password – FTP password from the host;
  • Click over to the Transfer Settings tab. Tick the box that says Limit Number of Simultaneous Connections, and enter 8 as the Maximum Number of Connections. This keeps the server from blocking your IP address, especially if you’re on a shared hosting server;
  • Click Connect. If you see folders named wp-content and wp-admin, you’re in the right place. If not, double click your root directory folder. This typically ispublic_html, but ask your host if you’re not sure;
  • If you do not see any files with a dot prefix, click Server, and select Force Showing Hidden Files. Find the .maintenance file, delete it, and then click the Refresh the File and Folder Lists button, and refresh your browser to check your site. Clear your cache and check again if you’re having issues.

How to Resolve the .maintenance Issue via SSH

To Rename the .maintenance file via SSH:

  • Use the following line:
    cd public_html
    this way you go into the root directory of the primary domain - if it is an addon, simply check this from the Addon Domain tab in the cPanel and replace public_html with the directory shown there. It is usually named after the domain itself - for instance: cd example.com
  • Next, use the following line:
    ls -la
    it lists all the files and folders with the current directory - this also lists hidden files (files that have a dot prefix before them) mv .maintenance .maintenance-disable - renames the maintenance file so that the message is no longer shown in the browser.

To disable plugins/themes via SSH:

  • Enter the following line:
    cd wp-content
    once inside the public_html, or the root directory of the problematic domain, you go within the wp-content folder, which holds WordPress’s most valuable assets such as plugins, themes, images, videos, etc.
  • The next line is:
    mv plugins plugins-disable
    this renames the directory that keeps the plugins, so they are no longer usable by WordPress, thus allowing you to access your website normally.
  • Next, we input:
    mv themes themes-disable
    it renames the themes directory so that they would no longer be usable by WordPress (this might also show a blank page, however, it will still allow us to access the administrative area of our website), thus allowing you to access your website normally.

Possibility 2: There is a Theme or Plugin that Has not Updated Correctly

Sometimes an error in a theme or plugin can cause the issue of unwanted maintenance mode. It’s easy to find out if that’s the case by renaming the themes and plugins folders. Once you rename the plugins folder, for example, all plugins on your site will get deactivated. Sometimes an error in a theme or plugin can cause that issue. Renaming the plugins or themes folder name can help find out the cause of the issue. To fix the problem, begin with:

  • Once again, you need to connect to the FTP server and access the site's root folder;
  • Go to the wp-content folder and change the name of plugins to something else like plugins-test. Once you did that, as mentioned, this will deactivate the plugins on your WordPress site;
  • Refresh your website and see if it loads. If it loads now, you can be sure that you have a plugin-related issue. In that case, you may proceed to the Solutions below. In case the site still doesn’t load, you should continue reading the next step;
  • If your site does not load after executing the third step, where you renamed the “plugins” folder, you should go back to the wp-content folder. This time, you have to rename the themes folder (e.g., themes-test). 

Theme and Plugin Solutions to Fix WordPress Stuck in Maintenance Mode

Here are both the theme and plugin solutions:

  • Plugin Solution: on your FTP server, go back to the folder wp-content and rename back the plugins-test folder to its original plugins. After you do that, go to your site’s WordPress AdminPlugins → activate the plugins one by one and test after each activation to see which one is causing the problem. Once you locate the problematic plugin, find it with your FTP account and delete its folder. Then you should try reinstalling the plugin’s latest version and if the problem persists after you do that, contact the plugin’s developer (there might be a bug).
  • Theme Solution: On your FTP server, go back to the folder wp-content. Rename back the themes-test to its former themes, and then simply delete the folder of the currently active theme. Reinstall the theme with its latest version, just as you did with the plugin, and if your site doesn’t load after you do that - contact the theme developer to give your feedback. Refresh the website to see if it loads. In case it is loading, the currently active theme causes the issue.

Prevent Future WordPress Maintenance Mode Issues

The unwanted maintenance mode issue could happen periodically, and as you can see, the fix is relatively simple. However, you should consider it in the future and make your life easier with some preventive measures.

Ensure Plugins/Themes are Compatible

If you would rather sidestep the future mishaps, we recommend you to always double-check if your chosen themes and plugins are compatible with the current WordPress version that you are using. WordPress' maintenance mode issue may happen from time to time, and the fix is relatively easy.

Avoid Updating all Plugins at Once

You cannot be too careful when it comes to updates. Therefore, it’s a good idea to update your plugins one by one, and if possible, check your live website after you update each one of them. This way, you will escape the hassle of checking which one is the reason for issues. Rather than solving already existing problems, it’s much better simply to avoid them.

Contact us for Assistance

As always, if you couldn’t fix the issue on your own, or in case you did not have the time, feel free to open a support ticket. Explain your issue and what you have tried so far. Our team of technical support experts works 24/7 and will gladly investigate further for you to make sure the issue is resolved as quickly as possible.

We hope you find this article useful. Discover more about FastCloud - the top-rated Hosting Solutions for personal and small business websites in four consecutive years by the HostAdvice Community!

WordPress Hosting

  • Free WordPress Installation
  • 24/7 WordPress Support
  • Free Domain Transfer
  • Hack-free Protection
  • Fast SSD Storage
  • Free WordPress Transfer
  • Free CloudFlare CDN
  • Immediate Activation
View More