Introduction

A site that goes down after a PHP update usually fails because the application, plugin stack, or server config was not ready for the new runtime. The update may have removed deprecated behavior, changed extension availability, or exposed code that was already fragile. The safest fix is to capture the exact compatibility failure before rolling more changes into production.

Symptoms

  • The site returns 500 errors, blank pages, or fatal errors after a PHP version change
  • Admin and front-end routes break at the same time
  • The issue starts immediately after switching PHP versions or applying host updates
  • Logs show deprecated feature removals, syntax errors, or missing extensions
  • One environment works while another fails on the newer PHP version

Common Causes

  • Themes, plugins, or custom code are incompatible with the new PHP version
  • Required PHP extensions are missing or disabled after the update
  • Runtime defaults changed for memory, error handling, or configuration parsing
  • Opcode cache or process restarts left the app in a mixed runtime state
  • The host updated PHP without aligning app dependencies and version support

Step-by-Step Fix

  1. Capture the exact fatal error or failing route from PHP and web server logs before changing more settings.
  2. Confirm the active PHP version and loaded extensions for the broken site rather than trusting the control panel selection alone.
  3. Compare the production runtime with the last known working version to identify extension, config, or version-support differences.
  4. Review plugins, themes, and custom code for PHP compatibility warnings or known breaks related to the new version.
  5. If the outage is severe, restore the last working runtime temporarily only after you preserve enough information to fix the root cause.
  6. Re-enable or install required extensions and verify runtime settings that may have changed during the update.
  7. Clear opcode cache and restart the relevant PHP and web services so the stack runs consistently on one version.
  8. Retest critical routes, admin paths, and background tasks before declaring recovery.
  9. Keep a PHP upgrade checklist tied to dependency compatibility so future version changes are validated before cutover.