Manual:Running MediaWiki on Debian or Ubuntu

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.

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.

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

Install LAMP Stack
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:

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

You can install any of the above with  .

Get MediaWiki

 * Download the official tarball

This can be done from a browser or by

cd Downloads wget https://releases.wikimedia.org/mediawiki//mediawiki-.tar.gz


 * extract in your Web directory

Configuration mysql
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):

# mysql -u root -p and enter password of mysql root user

MariaDB [(none)]> use mysql MariaDB [mysql]> CREATE USER 'new_mysql_user'@'localhost' IDENTIFIED BY 'passwd new_mysql_user'; MariaDB [mysql]> \q


 * create a NEW mysql database pi_wiki:

# mysql -u root MariaDB [(none)]> CREATE DATABASE pi_wiki; MariaDB [(none)]> use pi_wiki Database changed


 * GRANT the NEW mysql user access to the NEW created mysql database pi_wiki:

MariaDB [pi_wiki]> GRANT ALL ON pi_wiki.* TO new_mysql_user@localhost; Query OK, 0 rows affected (0.01 sec) MariaDB [pi_wiki]>\q

Now you can stop and start your mysql server again:

# sudo systemctl stop mysql # sudo systemctl start mysql

Optional: Configure PHP
Edit your PHP configuration file, php.ini.

On Ubuntu Trusty and Debian Jessie, it is located at.

On Ubuntu Xenial and Debian Stretch (PHP 7), it is located at.

Maximum upload file size
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:

to at least 20M.

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

Memory limit
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

to

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

Configure MediaWiki
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 this technique may work:

cd /var/www/html

sudo ln -s /var/lib/mediawiki 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 the configuration form and continue.

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

General information
Mediawiki is configured by the LocalSettings.php file, usually found in.

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
See .

Changing the logo
See .

MediaWiki extensions
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 .

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