Manual:Installation requirements

In addition to the software itself, a standard MediaWiki installation has the following requirements: In addition, there are various optional dependencies which are required if you want to use certain advanced features (see below).
 * PHP is required to run the software.
 * A database server is required to store the pages and site data.
 * A web server is required to send the generated pages to your web browser.

Prerequisites can be installed individually or through the Xampp installer. Remember to read the documentation for each individual component before installation. If your website is hosted (i.e. you don't have direct control over it) then contact the server administrators or hosting company to ensure these are installed.

Note that although MediaWiki ships with an installation script which provides web-based configuration of the most important elements, some knowledge of PHP is required for more detailed customizations.

= == PHP == =

PHP is the programming language in which MediaWiki is written, and is required in order to run the software.


 * For the latest version of MediaWiki, PHP version 5.0 or later is required (recommended at least 5.1, PHP versions 5.2.11, 5.2.12 and 5.3.1 are affected by PHP bug 50394 and are discouraged).
 * If you are unable to upgrade to PHP5, then you can use the old, unsupported, MediaWiki, which requires PHP version 4.3.0 or later
 * The following extensions are required: Perl Compatible Regular Expressions, Session, Standard PHP Library. Note that all of these are enabled in PHP by default.

If you need to compile PHP from source, then see PHP configuration for compilation options that affect MediaWiki.

Notes:
 * Some servers may also require the equivalent database module and session management module be installed. See individual operating system instructions for more information.
 * When installing on Windows using the Microsoft installer, add the extension for your database of choice (MySQL or Postgres) to the features to be installed.

= == Database server == =

MediaWiki stores all the text and data (articles, user details, system messages, etc.) in a database, which it is capable of sharing with other web-based applications (phpBB, etc.). You will need one of the following database servers to run the latest version of MediaWiki:


 * MySQL 4.0 or later*
 * PostgreSQL 8.1 or later (supported since MediaWiki 1.8 - also requires plpgsql and tsearch2. These may require a contrib package such as "postgresql-contrib-8.1" to be installed. See Manual:Installing_MediaWiki for more detail.
 * SQLite

Some users find it helpful to install an additional software package such as phpMyAdmin (MySQL) or phpPgAdmin (Postgres) to help administer the database server.

*''Note: MySQL 4 support has been required since MediaWiki 1.6 - if you are using an older version of MySQL and cannot upgrade then you should use MediaWiki 1.5.8. Note that this version is no longer supported.''

= == Web server == =

In order to serve the generated pages to your browser, MediaWiki requires some web server software. Often you will not have a choice of which software to use - it will be the one provided by your hosting provider.


 * Most installations use the Apache web server, available at the official download page. See Apache Integration for more information if you are setting up Apache/MediaWiki yourself.
 * MediaWiki has also been tested under IIS 6.0, Cherokee, and lighttpd.
 * Sun has some installation instructions for running MediaWiki on the Sun Java System Web Server 7.0.

= == Hardware requirements == =

The recommended minimum requirements are 256MB of RAM for a single-computer website and 40MB of storage, although this will not suffice for a busy public site or a site with uploading enabled. Some users have reported running MediaWiki on computers with as little as 48MB of RAM.

= == Optional dependencies == =


 * ImageMagick or GD is required for image thumbnailing.
 * TeX is required for the in-line display of mathematical formulae.
 * Sendmail is required in order for the system to be able to send e-mails.
 * Shell access is required to run maintenance scripts; upgrading may be more difficult without it.

For further information about the above items, see Manual:Installing third-party tools.