Manual:Running MediaWiki on Debian or Ubuntu

From MediaWiki.org
Jump to navigation Jump to search
Translate this page; This page contains changes which are not marked for translation.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎polski • ‎русский • ‎中文 • ‎日本語 • ‎한국어
Installation guides
FreeBSD
GNU/Linux
- ALT Linux
- Arch Linux
- Damnsmalllinux
- Debian or Ubuntu
- Fedora
- Gentoo
- Mandriva
- Red Hat Enterprise Linux
- Slackware
Mac OS X
NetWare
Solaris
- Solaris 11 / opensolaris
- Solaris 10
Windows
- Windows Server 2016
on a stick
- Uniform Server
- XAMPP
Sourceforge.net
This page documents how to install MediaWiki using the release tarballs. If you want to use system packages, see User:Legoktm/Packages.

This page explains how to install MediaWiki on a Debian or Ubuntu GNU/Linux server. The instructions below refer to Debian, but unless otherwise noted also apply to Ubuntu and Raspbian.

Introduction[edit]

This installation procedure requires knowledge of issuing commands from a terminal (e.g. installing applications) and using a text editor (e.g. graphical: gedit, kate; text: nano, emacs, vi).

When text editing is required it can be carried out on the graphical desktop by pressing Alt-F2 and typing

    gksudo gedit filename

Alternatively, editing can be done from a terminal

    sudo nano filename

Of course, kate could be used instead of gedit or vi instead of nano.

Step-By-Step[edit]

Ensure Debian is up-to-date[edit]

Double check that Debian is up-to-date by running:

sudo apt-get update
sudo apt-get upgrade

or in one line

sudo apt-get update && sudo apt-get upgrade


Install LAMP Stack[edit]

Ubuntu Server Edition makes LAMP (Apache, PHP, and MySQL) available for installation during the install process. During the installation step, make sure you choose to install a LAMP server. Alternately, you can install all of these packages from a standard installation using these commands:

Ubuntu 16.04.2 LTS (Xenial) and Debian Stretch include PHP 7.0, and renamed many packages from "php5" to plain "php". In addition, some PHP modules are now in separate packages (xml, mbstring).
sudo apt-get install apache2 mysql-server php php-mysql libapache2-mod-php php-xml php-mbstring
Ubuntu Trusty, Debian Jessie and Raspbian (Jessie) include PHP 5, and use "php5" in most (but not all) packages.
sudo apt-get install apache2 mysql-server php5 php5-mysql libapache2-mod-php5

Optional useful packages[edit]

These packages are not necessary but may be useful, depending on the installation:

Name Package Description
Alternative PHP Cache php-apcu or php5-apcu Modern MediaWiki versions will automatically take advantage of this being installed for improved performance.
PHP Unicode normalization php-intl or php5-intl MediaWiki will fallback to a slower PHP implementation if not available.
ImageMagick imagemagick Image thumbnailing.
Inkscape inkscape Alternative means of SVG thumbnailing, than ImageMagick. Sometimes it will render SVGs better if originally created in Inkscape.
PHP GD library php-gd or php5-gd Alternative to ImageMagick for image thumbnailing.
PHP command-line php-cli or php5-cli Ability to run PHP commands from the command line, which is useful for debugging and running maintenance scripts.
PHP cURL php-curl or php5-curl Required by some extensions such as Extension:Math. See Manual:cURL
git source control version git If not present config script will tell you that it is not installed

You can install any of the above with sudo apt-get install packagename.

If you want to install all of them: sudo apt-get install php-apcu php-intl imagemagick inkscape php-gd php-cli php-curl git If you install php-apcu you will have to reload your apache configuration in order to avoid a warning message when running configuration script:

sudo service apache2 reload

Get MediaWiki[edit]

This can be done from a browser or by command line

    cd /tmp/
    wget https://releases.wikimedia.org/mediawiki/1.31/mediawiki-1.31.1.tar.gz
  • extract in your Web directory
tar -xvzf /tmp/mediawiki-*.tar.gz
sudo mkdir /var/lib/mediawiki
sudo mv mediawiki-*/* /var/lib/mediawiki


Configuration mysql[edit]

But before proceeding with the initial MediaWiki installation, there are certain steps you need to do first!

You will have to:

  • create a NEW mysql user (new_mysql_user):
# sudo mysql -u root -p and enter password of mysql root user (if you have no configured password it will be empty, so just press return)
mysql> CREATE USER 'new_mysql_user'@'localhost' IDENTIFIED BY 'THISpasswordSHOULDbeCHANGED';
mysql> quit;
  • create a NEW mysql database my_wiki:
# sudo mysql -u root
mysql> CREATE DATABASE my_wiki;
mysql> use my_wiki;
Database changed
  • GRANT the NEW mysql user access to the NEW created mysql database my_wiki:
mysql> GRANT ALL ON my_wiki.* TO 'new_mysql_user'@'localhost';
Query OK, 0 rows affected (0.01 sec)
mysql>quit;

Optional: Configure PHP[edit]

These steps are optional and can be done post-installation. MediaWiki will still work without these changes.

Edit your PHP configuration file, php.ini. On Ubuntu Trusty and Debian Jessie, it is located at /etc/php5/apache2/php.ini.

On Ubuntu Xenial and Debian Stretch (PHP 7), it is located at /etc/php/7.0/apache2/php.ini.

Maximum upload file size[edit]

Assuming that various files are going to be uploaded to the Wiki as content, the limit on the maximum size of an upload has to be adjusted. About one-half way down is the File Uploads section. Change:

upload_max_filesize = 2M

to at least 20M. You may have to adjust this again in the future if you want bigger uploads.

Memory limit[edit]

Some PHP scripts require a lot of memory to run. To increase the maximum amount of memory a script can use, page down to about 21%, and change the following entry, if found, from

memory_limit = 8M

to

memory_limit = 128M

If it is already set to 128M or more, leave it as is.

Configure MediaWiki[edit]

Navigate your browser to http://localhost/mediawiki (for certain installations it may be http://localhost/mediawiki/config or http://wiki.hostname.com/config instead) and following the procedure given.

If this gives a 404 error then working a symbolic link should solve it:

sudo ln -s /var/lib/mediawiki /var/www/html/mediawiki
  • Pay close attention for "Checking environment..." in MediaWiki installation script.

This can solve a lot of problems by specifically identifying the source of any errors.

It may complain that php extensions like mbstring and xml are missing even you have installed them. Please manually activate them by using:

 sudo phpenmod mbstring
 sudo phpenmod xml
 sudo systemctl restart apache2.service

Fill out all the field in the configuration form and press to continue button. You will have to use your username and password provided in the mysql configuration section:

mysql> CREATE USER 'new_mysql_user'@'localhost' IDENTIFIED BY 'THISpasswordSHOULDbeCHANGED';

Under Database Config, you may change the database name and DB username to new values, but you must turn on "Use superuser account", name:

debian-sys-maint

giving the mysql root password you configured earlier.

The configuration process will prompt you to download a LocalSettings.php that must be saved to the parent directory of the new wiki. The configuration page will give the exact directory/filename that must be moved:

 sudo mv ~/Downloads/LocalSettings.php /var/lib/mediawiki/

And navigate your browser to http://localhost/mediawiki (or http://server_ip_address/mediawiki or http://server_ip_address/mediawiki/index.php) to see your new wiki.

Done! You now have a working Wiki

Additional wiki configuration[edit]

General information[edit]

Mediawiki is configured by the LocalSettings.php file, usually found in /var/lib/mediawiki. Manual:LocalSettings.php has detailed information that may be useful. The following are changes that appear to be universally helpful

To edit LocalSettings.php use

gksudo gedit /var/lib/mediawiki/LocalSettings.php

or from a terminal

sudo nano /var/lib/mediawiki/LocalSettings.php


File uploads[edit]

See Manual:Configuring file uploads .

[edit]

See Manual:$wgLogo .

MediaWiki extensions[edit]

The current tarball for Mediawiki comes with a package of 15 or so of the most popular extensions, but there are literally hundreds more.

Instructions on how to enable extensions can be found at Manual:Extensions#Installing an extension .

Pretty URLs[edit]

To use /wiki/* instead of /wiki/index.php/* on Debian, follow the recommended short URL guide using '/mediawiki' as the script path instead of '/w' and placing the rewrites in /etc/apache2/conf-enabled/mediawiki.conf.

See also[edit]