# Concept: Server Requirements

## What are the requirements for running the core software?
### Disk space

The total amount of disk space needed for your site is not a fixed amount, as it
depends on your site. The base files for the core software take up about 100 MB
on the web server. You will need more space if you install additional modules or
themes, and you'll also need space for media, backups, and other files generated
by and uploaded to your site. The database also uses disk space, although that
is typically not in the same area (and in some cases, not even on the same
server) as that used by the site files.
### PHP

PHP 8.3 or a higher PHP 8 version. PHP must be set up with a minimum memory size
of 64MB; if you are running multiple modules on your site or using
memory-intensive PHP-based command-line tools (such as Composer), considerably
more memory than that may be needed.

Certain PHP extensions are also required; the exact list of required PHP
extensions depends on how you install the core software and which modules you
are using on your site. Generally, hosting service providers have installed all
the PHP extensions you will need. If you are self-hosting or running your site
on your local computer, you will get error messages during installation if any
required PHP extensions are missing, and should be able to install them and
continue. See 
[PHP requirements](https://www.drupal.org/docs/getting-started/system-requirements/php-requirements)
for a complete list of requirements.
### Web server

- **Apache (Recommended):** Apache is the most commonly used web server. The core software will work on Apache 2.4.7 or higher hosted on UNIX/Linux, OS X, or Windows that have the Apache mod_rewrite module installed and enabled. The Apache VirtualHost configuration must contain the directive _AllowOverride All_ to allow the _.htaccess_ file to be used.
- **PHP Local Server:** You can temporarily run a local demo site on your computer using just PHP, without installing web server software.
- **Nginx:** Nginx is a commonly used web server that focuses on high concurrency, performance and low memory usage. The core software will work on Nginx 0.7 or greater hosted on UNIX/Linux, OS X, or Windows. The ngx_http_rewrite_module must be installed and enabled.
### Database

Use one of the following databases:

* MySQL - 8.0+ (MariaDB 10.6+, Percona 8.0+) or higher with an
InnoDB-compatible primary storage engine
* PostgreSQL - 16 or higher with the pg_trgm extension
* SQLite - 3.45 or higher. Temporary local demo sites use SQLite, which is
distributed as part of PHP and doesn't require installing separate database
software, but make sure your version of PHP has the minimum SQLite included.
## Additional resources

* [_Drupal.org_ community documentation page "System requirements"](https://www.drupal.org/docs/system-requirements)
* [PHP Runtime Configuration (PHP memory limit and other settings)](https://secure.php.net/manual/en/configuration.php)
* [Installing a new Drupal application on your local machine](https://www.drupal.org/docs/official_docs/en/_local_development_guide.html)
* [Creating a Drupal demo application for evaluation purposes](https://www.drupal.org/docs/official_docs/en/_evaluator_guide.html)