0% found this document useful (0 votes)
37 views6 pages

Server Environment - Make WordPress Hosting

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views6 pages

Server Environment - Make WordPress Hosting

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

11/10/2022 11:25 Server Environment – Make WordPress Hosting

Hide welcome box


The hosting team works to improve WordPress’ end-user experience across hosting
environments through industry collaboration and user education. Want to contribute?
Come join us!
The team meets in the #hosting-community Slack channel each week on Wednesday
at 0900 UTC and 1800 UTC. Check out local times at make/meetings.
Contribute automated test results from your hosting environment, and help build the
test runner and results page!
See more details about ongoing projects on the Team Projects page.

Learn more about hosting WordPress in the handbook. Feel free to bring up
recommendations for changes and additions in Slack!

Home / Handbook / Server Environment

Server Environment Edit

Although WordPress can work in almost any


environment, even very minimal ones, it must be
TOPICS
acknowledged that it does not work completely well in
Web Server
these. That’s why here we are going to make some
minimum recommendations of the environment in PHP
which it would work most effectively when considering PHP Extensions
that most WordPress websites use third party plugins System Packages
and themes which commonly introduce additional Database
server-level requirements.
How do I know which version
I have?
Changelog
 Web Server

The web server is piece of software that accepts user web requests and serves them the
appropriate result. There are many different web servers that run on different operation
https://make.wordpress.org/hosting/handbook/server-environment/ 1/6
11/10/2022 11:25 Server Environment – Make WordPress Hosting

systems. Generally, if your web server supports and executes PHP files, it should be able to
work with WordPress.

The two most popular ones that are recommended are:

Apache HTTPD 2.4


nginx 1.22

Others are used by hosting companies and developers and are known to work well too:

LiteSpeed Web Server 6.0 / 5.4


OpenLiteSpeed 1.7

Those are the latest versions at the time of writing this document. Always keep your web server
up-to-date to ensure best performance!

 PHP Top ↑

PHP is a programming language on which WordPress code is based. This language runs on
the server and it is important to keep it up to date, both for security and functionality.

WordPress supports many versions of PHP, some even obsolete, we recommend running
PHP version 7.4 or higher:

PHP 7.4
PHP 8.0*
PHP 8.1*

IMPORTANT: WordPress 6.0 has beta support for PHP 8.0 and PHP 8.1. If used some of these
versions may get some Warnings.

Versions prior to PHP 7.4 are not maintained by the PHP Community, although they may
receive security updates from operating systems distributions. Security support for PHP
7.3 ended in 2021-12-06 which means that even if there are security problems with it,
official versions won’t be released. Keeping your PHP to the latest stable version is
important for WordPress speed and security.

 PHP Extensions Top ↑

https://make.wordpress.org/hosting/handbook/server-environment/ 2/6
11/10/2022 11:25 Server Environment – Make WordPress Hosting

WordPress core makes use of various PHP extensions when they’re available. If the
preferred extension is missing WordPress will either have to do more work to do the task
the module helps with or, in the worst case, will remove functionality.

The PHP extensions listed below are required for a WordPress site to work.

json (bundled in >=8.0.0) – Used for communications with other servers and processing
data in JSON format.
One of either mysqli (bundled in >=5.0.0), or mysqlnd – Connects to MySQL for
database interactions.

The PHP extensions listed below are highly recommended in order to allow WordPress to
operate optimally and to maximise compatibility with many popular plugins and themes.

curl (requires libcurl) – Performs remote request operations.


dom (requires libxml) – Used to validate Text Widget content and to automatically
configure IIS7+.
exif (requires php-mbstring) – Works with metadata stored in images.
fileinfo – Used to detect mimetype of file uploads.
hash (bundled in >=5.1.2) – Used for hashing, including passwords and update
packages.
imagick (requires ImageMagick >= 6.2.4 and php-imagick) – Provides better image
quality for media uploads. See WP_Image_Editor for details. Smarter image resizing (for
smaller images) and PDF thumbnail support, when Ghost Script is also available.
mbstring – Used to properly handle UTF8 text.
openssl (PHP 7.0 requires OpenSSL >= 0.9.8; PHP >= 7.1.0 requires OpenSSL >= 1.0.1;
PHP >= 8.1 requires OpenSSL >= 3.0) – Permits SSL-based connections to other hosts.
pcre – Increases performance of pattern matching in code searches.
xml (requires libxml) – Used for XML parsing, such as from a third-party site.
zip (requires libzip >= 0.11) – Used for decompressing Plugins, Themes, and WordPress
update packages.

The PHP extensions listed below are recommended to allow some WordPress cache (if
necessary).

memcached (requires libmemcached – PHP >=5.2.0 requires libmemcached >=0.2.0) –


memcached is a high-performance, distributed memory object caching system, generic
in nature, but intended for use in speeding up dynamic web applications by alleviating
database load.
opcache (requires libcurl) – PHP can be configured to preload scripts into the opcache
when the engine starts.
https://make.wordpress.org/hosting/handbook/server-environment/ 3/6
11/10/2022 11:25 Server Environment – Make WordPress Hosting

redis – PHP extension for interfacing with Redis

For the sake of completeness, below is a list of the remaining PHP modules
WordPress may use in certain situations or if other modules are unavailable. These are
fallbacks or optional and not necessarily needed in an optimal environment, but installing
them won’t hurt.

bc – For arbitrary precision mathematics, which supports numbers of any size and
precision up to 2147483647 decimal digits.
filter – Used for securely filtering user input.
image (requires libgd >=2.1.0) – If Imagick isn’t installed, the GD Graphics Library is used
as a functionally limited fallback for image manipulation.
iconv (requires libiconv/POSIX) – Used to convert between character sets.
intl (bundled in >=5.3.0) – Enable to perform locale-aware operations including but not
limited to formatting, transliteration, encoding conversion, calendar operations,
conformant collation, locating text boundaries and working with locale identifiers,
timezones and graphemes.
simplexml (requires libxml) – Used for XML parsing.
sodium – (requires libsodium >=1.0.8 or bundled in >=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.

These extensions are used for file changes, such as updates and plugin/theme installation,
when files aren’t writeable on the server.

ssh2 (requires OpenSSL and libssh >=1.2.9) – Provide access to resources (shell, remote
exec, tunneling, file transfer) on a remote machine using a secure cryptographic
transport.
ftp – Implement client access to files servers speaking the File Transfer Protocol (FTP).
sockets – Implements a low-level interface to the socket communication functions
based on the popular BSD sockets.

The priority of the transports are Direct file IO, SSH2, FTP PHP Extension, FTP implemented
with Sockets, and FTP implemented through PHP alone.

 System Packages Top ↑

ImageMagick – Required by Imagick extension

https://make.wordpress.org/hosting/handbook/server-environment/ 4/6
11/10/2022 11:25 Server Environment – Make WordPress Hosting

Ghost Script – Enables Imagick/ImageMagick to generate PDF thumbnails for the media
library. See Enhanced PDF Support in WordPress 4.7 for details.

 Database Top ↑

For data storage, WordPress uses systems compatible with MySQL.

Officially recommended by WordPress are

MySQL 8.0 / 5.7


MariaDB 10.6 / 10.5 / 10.4 / 10.3

Other MySQL servers that are known to perform well are:

Percona MySQL Server 8.0


Amazon Aurora
Amazon RDS for MariaDB
Amazon RDS for MySQL
Azure Database for MySQL
Google Cloud MySQL
DigitalOcean MySQL
IBM Cloud Databases for MySQL
MySQL HeatWave

Although WordPress may run on older versions, it is recommended to use these or newer
ones for security and performance reasons.

 How do I know which version I have? Top ↑

If you have WordPress 5.2+, the WordPress Admin already has tools with that information
in the Site Health section (at Tools in the menu).

If you have an older version, you can activate the Site Health section installing the
WordPress Community Plugin called Health Check & Troubleshooting (more help for this
plugin).

https://make.wordpress.org/hosting/handbook/server-environment/ 5/6
11/10/2022 11:25 Server Environment – Make WordPress Hosting

If you’re interested in improving this handbook, check the Github


 Handbook repo, or leave a message in the #hosting-community channel
of the official WordPress Slack.

 Changelog Top ↑

2022-06-22: Added PHP extensions requirements and cache extensions


2022-06-06: Delete MariaDB 10.2
2022-05-13: Update for WordPress 6.0 and stable software versions; updated
deprecated PHP versions and extensions
2021-05-27: Fixing infoboxes
2021-05-07: Updated versions and extensions. PHP 7.3 bump based on Trac
2021-05-05: Updated the imagick (WP_Image_Editor) link
2021-05-05: Updated versions (webserver, PHP, SQL)
2021-02-17: Changelog added
2020-11-23: Minor text changes and info-block
2020-07-16: Updated webserver versions and vendors. Updated PHP versions. Updated
SQL versions and vendors. Added: How do I know which version I have?. Updated
libsodium to sodium
2020-06-02: Published from Github

Last updated: August 10, 2022

https://make.wordpress.org/hosting/handbook/server-environment/ 6/6

You might also like