When I try to upgrade PHP to version 7.4 or 7.3, I get the following error:

Service Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

Additionally, a 503 Service Unavailable error was encountered while trying to use an ErrorDocument to handle the request.

I tried to rename plugins folder and switched back to old PHP version and deactivated all pluigns, But still the same.

I activated twenty twenty-one and twenty twenty themes from WordPress, But still the same.

Finally I tried to logout and upgraded to PHP 7.4 and I could see the homepage. But when I try to visit any other page like /wp-admin or pages in the menu like /contact, I get the same error again.

I think it could be from .htaccess. Here is the code there:

RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# BEGIN WordPress
# The directives (lines) between "BEGIN WordPress" and "END WordPress" are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress
<IfModule mod_rewrite.c>
    <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf|eot|woff2|woff|ttf|svg)$">
    Header set Cache-Control "max-age=31449600, public"
    <FilesMatch "\.(xml|txt|js|css|json)$">
    Header set Cache-Control "max-age=604800, public, must-revalidate"
    <FilesMatch "\.(html|htm|php)$">
    Header set Cache-Control "max-age=28800, must-revalidate"
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary

# php -- BEGIN cPanel-generated handler, do not edit
# Set the “ea-php74” package as the default “PHP” programming language.
<IfModule mime_module>
  AddHandler application/x-httpd-ea-php74 .php .php7 .phtml
# php -- END cPanel-generated handler, do not edit

I tried to comment the first part which redirects to https:

#RewriteCond %{HTTPS} off
#RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
#RewriteCond %{HTTP_HOST} !^www\. [NC]
#RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

And when I tried to visit http://example.com, I got that same error.

When I tried https://www.example.com, it loaded fine. But not other pages only homepage.

  • Hi, thanks for your question. Please check the error log from your cPanel, check if there's any error for missing php function or anything like that, also check the php extensions tab in php selector after switching version, check for any extension that might disabled, but required for your website. You might also want to share the some of the error log data, so we can understand better what going on under the hood. May 8 at 5:37
  • FWIW, this does not seem to be a problem with your .htaccess file (as you appear to suggest). When you say https://www.mywebsite.com "loaded fine" - is that because of the www or https or both? "When I try to upgrade PHP to version 7.4" ... "Finally I tried to logout and upgraded to PHP 7.4" - so, you tried to upgrade PHP first or last or when? But it was definitely the process of upgrading PHP that caused this response? Please edit your question to include the full HTTP response headers associated with the 503 response.
    – MrWhite
    May 9 at 22:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.