Website Vidya
WordPressStep-by-Step Guide

How to Fix WordPress White Screen of Death Error - 6 Easy Steps

The "White Screen of Death" (WSOD) is a common and frustrating issue that WordPress users may encounter. When this error occurs, the entire screen turns white, and users are left wondering what went wrong. The WSOD error can be caused by a ...

RR
Website Vidya TeamLead Systems Educator
Published:
6 min read
How to Fix WordPress White Screen of Death Error - 6 Easy Steps
AI Executive SummaryCORE CIS AI

6 min read

The "White Screen of Death" (WSOD) is a common and frustrating issue that WordPress users may encounter. When this error occurs, the entire screen turns white, and users are left wondering what went wrong. The WSOD error can be caused by a ...

Key Highlights
  • Prerequisites
  • How to Install PHP Extensions for WordPress?
  • Conclusion
Grounded in full engineering runbookCORE CIS Ai Engine

WordPress is a versatile and widely used content management system (CMS) that powers a significant portion of the web. To enhance the functionality and performance of your WordPress site, you might find it necessary to install PHP extensions.

PHP extensions are additional libraries that provide extra features and capabilities to the PHP programming language, which WordPress is built upon.

In this guide, we'll walk you through the process of installing PHP extensions for WordPress to ensure your website runs smoothly and efficiently.

Prerequisites

  • Ubuntu 22.04 | 20.04 | 18.04 LTS x64 server instance
  • Access to SSH
  • HTTP and HTTPS Connectivity
  • root privileges / sudo privileges

How to Install PHP Extensions for WordPress?

Step 1: Identify the Required PHP Extensions

Before you begin the installation process, identify the specific PHP extensions that your WordPress site requires. Common extensions include:

MySQL/MariaDB: Essential for database connectivity.

GD Library: Used for image processing and manipulation.

cURL: Enables communication with other servers via various protocols.

JSON: Facilitates handling JSON data.

ZIP: Allows for the handling of zip archives.

XML: Required for parsing XML data.

Ensure you check the WordPress documentation and plugin requirements to determine which extensions are necessary for your site.

Step 2: Accessing the Server

To install PHP extensions, you need access to your server. This can be done through a variety of methods, including:

SSH: Securely connect to your server using Secure Shell.

FTP: Use File Transfer Protocol to upload files to your server.

Control Panel: Access your hosting provider's control panel to manage server settings.

Choose the method that best suits your preferences and server configuration.

Step 3: Installing PHP Extensions via SSH

If you have SSH access to your server, follow these steps:

Connect to your server: Open a terminal and use SSH to connect to your server.

ssh username@your_server_ip

Update the server packages by running:

sudo apt update && sudo apt upgrade

To install the PHP extension, run:

sudo apt install php-extension_name

Replace "extension_name" with the name of the extension you want to install.

Now, restart the webserver to the PHP extension take effect:

sudo service apache2 restart

If you're using Nginx, replace "apache2" with "nginx" and run the following command:

sudo service nginx restart

List of PHP Extensions

  • Apache
  • APCu
  • Arrays
  • BC Math
  • Bzip2
  • Calendar
  • Classes/Objects
  • CommonMark
  • COM
  • Componere
  • CSPRNG
  • Ctype
  • CUBRID
  • cURL
  • Date/Time
  • DBA
  • dBase
  • Direct IO
  • Directories
  • DOM
  • Data Structures
  • Eio
  • Enchant
  • Error Handling
  • Ev
  • Event
  • Exif
  • Expect
  • FANN
  • FrontBase
  • FDF
  • FFI
  • Fileinfo
  • Filesystem
  • Filter
  • FastCGI Process Manager
  • FTP
  • Function Handling
  • GD
  • Gearman
  • Gender
  • GeoIP
  • Gettext
  • Gmagick
  • GMP
  • GnuPG
  • Hash
  • HRTime
  • Firebird/InterBase
  • IBM DB2
  • iconv
  • ImageMagick
  • IMAP
  • PHP Options/Info
  • Program execution
  • Inotify
  • intl
  • JSON
  • LDAP
  • libxml
  • Lua
  • LuaSandbox
  • LZF
  • Mail
  • Mailparse
  • Math
  • Multibyte String
  • McryptMemcache
  • Memcached
  • Mhash
  • Misc.
  • mqseries
  • MySQL (Original)
  • Mysql_xdevapi
  • MySQLi
  • Mysqlnd
  • Network
  • OAuth
  • OCI8
  • OPcache
  • OpenAL
  • OpenSSL
  • Output Control
  • parallel
  • Parle
  • Password Hashing
  • PCNTL
  • PCRE
  • PDO
  • CUBRID (PDO)
  • MS SQL Server (PDO)
  • Firebird (PDO)
  • IBM (PDO)
  • Informix (PDO)
  • MySQL (PDO)
  • Oracle (PDO)
  • ODBC and DB2 (PDO)
  • PostgreSQL (PDO)
  • SQLite (PDO)
  • MS SQL Server (PDO)
  • PostgreSQL
  • Phar
  • phpdbg
  • pht
  • POSIX
  • PS
  • Pspell
  • pthreads
  • Radius
  • Rar
  • Readline
  • Recode
  • Reflection
  • RpmInfo
  • RRD
  • runkit7
  • ScoutAPM
  • Seaslog
  • Semaphore
  • Sessions
  • Shared Memory
  • SimpleXML
  • SNMP
  • SOAP
  • Sockets
  • Sodium
  • Solr
  • SPL
  • SQLite3
  • SQLSRV
  • ssdeep
  • SSH2Stomp
  • Streams
  • Strings
  • SVM
  • SVN
  • Swoole
  • Sync
  • Taint
  • TCP
  • Tidy
  • Tokenizer
  • Trader
  • UI
  • ODBC
  • uopz
  • URLs
  • V8js
  • Variable handling
  • Varnish
  • WDDX
  • win32service
  • WinCache
  • wkhtmltox
  • xattr
  • xdiff
  • Xhprof
  • XLSWriter
  • XML Parser
  • XMLDiff
  • XMLReader
  • XML-RPC
  • XMLWriter
  • XSL
  • Yac
  • Yaconf
  • Yaf
  • Yaml
  • Yar
  • YAZ
  • Zip
  • Zlib
  • 0MQ messaging
  • ZooKeeper

Optimizing WordPress: A Comprehensive Guide to PHP Extensions

WordPress, the leading content management system, relies on various PHP extensions to unlock advanced features and optimize performance. Understanding and installing these extensions is crucial for ensuring your WordPress site operates seamlessly. This guide will walk you through the process, highlighting required and recommended PHP extensions.

Required PHP Extensions

For WordPress to function smoothly, certain PHP extensions are mandatory. Ensure your server environment supports PHP version 7.4 or higher. The essential extensions include:

  • json (bundled in >=8.0.0): Facilitates communication with servers and processes data in JSON format.
  • mysqli or mysqlnd (bundled in >=5.0.0): Connects to MySQL for database interactions.

To maximize compatibility with popular plugins and themes, consider installing the following extensions:

  • curl (PHP >= 7.3): Performs remote request operations.
  • dom (requires libxml): Validates Text Widget content and configures IIS7+ automatically.
  • exif (requires php-mbstring): Works with metadata stored in images.
  • fileinfo (bundled in PHP): Detects mimetype of file uploads.
  • hash (bundled in PHP >=5.1.2): Used for hashing, including passwords.
  • igbinary: Enhances performance as a drop-in replacement for the standard PHP serializer.
  • imagick (requires ImageMagick >= 6.2.4): Provides better image quality for media uploads.
  • intl (PHP >= 7.4.0): Enables locale-aware operations.
  • mbstring: Properly handles UTF8 text.
  • openssl (PHP 7.1-8.0): Enables SSL-based connections to other hosts.
  • pcre (bundled in PHP >= 7.0): Increases performance in pattern matching.
  • xml (requires libxml): Used for XML parsing.
  • zip (requires libzip >= 0.11): Used for decompressing Plugins, Themes, and WordPress update packages.

To enable caching, consider using one of the following alternatives:

  • apcu: In-memory key-value store.
  • memcached (requires libmemcached >= 1.0.0): Distributed memory object caching system.
  • opcache: Preloads scripts into the opcache.
  • redis: Interfaces with Redis.

Additional PHP Modules

While not mandatory, the following modules may be used in specific situations or as fallbacks:

  • bc: For arbitrary precision mathematics.
  • filter: Securely filters user input.
  • image (requires libgd >= 2.1.0): GD Graphics Library for image manipulation.
  • iconv (requires libiconv/POSIX): Converts between character sets.
  • shmop: Allows PHP to read, write, create, and delete Unix shared memory segments.
  • simplexml (requires libxml): Used for XML parsing.
  • sodium (bundled in PHP >=7.2.0): Validates Signatures and provides securely random bytes.
  • xmlreader (requires libxml): Used for XML parsing.
  • zlib (requires zlib >= 1.2.0.4): Gzip compression and decompression.

PHP Extensions for File Change

For handling file changes, such as updates and plugin/theme installation:

  • ssh2 (requires OpenSSL and libssh >= 1.2): Provides secure access to remote resources.
  • ftp: Implements client access to FTP servers.
  • sockets: Low-level interface to socket communication functions.

System Packages

Ensure the following system packages are available:

  • curl (recommended >= 8.4)
  • Ghost Script (recommended Ghost Script >= 10.0): Enables Imagick/ImageMagick to generate PDF thumbnails.
  • ImageMagick (recommended ImageMagick >= 7.1): Required by Imagick extension.
  • OpenSSL (recommended >= 3.0)

By meticulously installing these PHP extensions and system packages, you empower your WordPress site with enhanced functionality, performance, and compatibility with a myriad of plugins and themes. Follow WordPress's Server environment handbook and stay up-to-date with the latest versions to ensure optimal operation.

Conclusion

Installing PHP extensions for WordPress is a crucial step in optimizing your website's performance and enabling additional features. By following the steps on how to install PHP extensions for WordPress outlined in this guide, you can ensure that your WordPress site has the necessary PHP extensions to function seamlessly.

Keep in mind that specific server configurations may vary, so always refer to your hosting provider's documentation for any additional requirements or procedures.

Written by

Website Vidya Team

Technology educator and researcher at Website Vidya.

Discussion

0
Share your thoughts, ask a question, or suggest a tip...
Write →

No comments on this guide yet. Be the first to share your thoughts or ask a question!

Recommended Reading10 Guides

Related Technical Guides

Tested runbooks, server administration walkthroughs, and troubleshooting guides

WordPress•

How to Create a Table of Contents in WordPress

How to create a table of contents in WordPress? Did you ever want to add a table of contents just like Wikipedia has on its website? If yes, I’m going to show you a way that you use to put a similar table of contents box on your blog or web...

RR
Rajesh Rai
Read More
WordPress•

How to Upload SVG to WordPress - 3 Easy Methods

Do you want to embed SVG in the WordPress website? Learn how to upload SVG to WordPress effortlessly with 3 simple methods. Enhance your website with captivating graphics. This how-to guide is for all levels. By default, the WordPress conte...

RR
Rajesh Rai
Read More
WordPress•

How to Hide or Remove the WordPress Admin Toolbar

WordPress displays a toolbar at the top of every page by default. Whether you are viewing your website’s admin dashboard or any page, you will find this WordPress toolbar on every page and it is very annoying for most of the people. Moreove...

RR
Rajesh Rai
Read More