Help:Maintenance and Setup

From Lunarpedia
Jump to: navigation, search

Note: this is the public domain MediaWiki FAQ from 13 September 2006

Contents

General Questions

What is MediaWiki?

"MediaWiki" is a wiki engine; that is, it is software which provides a web site that contains pages which can be edited by users. It is used primarily by the Wikimedia Foundation to power their open-content projects, such as Wikipedia and the Wikimedia Commons.

When should I use MediaWiki?

MediaWiki is ideal for setting up and running websites where the intent is to allow collaborative editing by users, as in the wikis described above. With a little tweaking, MediaWiki can be used for a number of other applications, and several users of the software have customised it to meet varying needs.

What can't MediaWiki do?

While versatile, MediaWiki isn't suited to all purposes. In particular, users should remember that it is designed to allow open-editing, and doesn't provide very complex per-page access restrictions. Users seeking such functionality ought to consider using software dedicated to that purpose, such as document or content management software.

Who develops MediaWiki?

MediaWiki is developed primarily by volunteers working for the non-profit Wikimedia Foundation, in response to their needs for a wiki engine for their projects. Some of the active contributors include:

  • Brion Vibber, release manager
  • Tim Starling
  • Magnus Manske
  • Ævar Arnfjörð Bjarmason
  • Rob Church
  • Niklas Laxström

There is also a large community of users who track changes to the software and keep the internationalisation files up to date.

Installation and configuration

Where do I download MediaWiki?

The latest stable release of MediaWiki can be downloaded from http://sourceforge.net/project/showfiles.php?group_id=34373. You will be prompted to select a download mirror. Files are supplied in a .tar.gz archive.

MediaWiki can also be obtained direct from our Subversion repository.

How do I install MediaWiki?

Installing MediaWiki takes between 10 and 30 minutes (when using MySQL), and involves uploading/copying files, creating a database and user, and running the installer script to configure the software.

Full instructions can be found in the INSTALL file supplied in the distribution archive.

How do I install MediaWiki using a package?

Many Linux distributions provide mediawiki in a packaged format for that distribution. The MediaWiki development team refers you to your Linux distribution for assistance with installing, configuring or using them. The individual communities & companies who maintain such packages should provide installation instructions.

Can I install more than one wiki on a server using MediaWiki?

It's possible to install more than one wiki on a server provided that:

  • You use a different database for each wiki

OR

  • You use a different database prefix for each wiki

For information on these options, see $wgDBname and $wgDBprefix respectively.

For information on setting up a wiki family, see Help:Wiki family.

How do I enable uploading?

File uploads are an often-used feature of MediaWiki, but are disabled by default in all current release versions. To enable them, first make the upload directory (default images) writable by the web server (CHMOD 777 or allow the Apache user to write to it, etc.) then set $wgEnableUploads to true in LocalSettings.php.

How do I purge a cached page?

To purge a cached page, such as when making changes to the navigation bar, add &action=purge to the end of the page url.

e.g. http://www.mediawiki.org/w/index.php?title=Main_Page&action=purge

How do I allow uploading of additional formats?

MediaWiki requires that allowed file upload formats are specified using the $wgFileExtensions configuration directive.

For example, to allow uploading of PDF files, add the following to LocalSettings.php:

$wgFileExtensions[] = 'pdf';

"File is corrupt or has an invalid extension"

Some users have reported that after adding a file format to the allowed extensions list, an error is encountered. The text of the error is similar to the following:

The file is corrupt or has an incorrect extension. Please check the file and upload again.

Possible solutions:

  • Set the value of $wgMimeDetectorCommand, e.g. under Unix or Linux, this would be
    $wgMimeDetectorCommand = "file -bi";
  • Compile/install the fileinfo PHP extension

How can I create Interwiki Links in my Wiki?

Just edit the Table "interwiki" and add the prefix and the URL of the Wikipedia or Archive which you want.

File:Clarify-Simple.png

Upgrading

Generic instructions on the upgrade process can be found in the UPGRADE file supplied with the software. See also Manual:Upgrading MediaWiki and the more specific Manual:Upgrading to 1.6..

Changing the Interface

How do I change the logo?

The logo that appears in the top left of each page is determined by the $wgLogo configuration setting in the LocalSettings.php file.

To change this you simply need to change the value of $wgLogo to point to the URL of your own logo image. You can upload a file via the wiki and use that address (which allows it to be replaced easily, so you may want to protect the page if you use this method) or use an image uploaded to your server via other means.

Note: It is possible to simply overwrite the default logo installed with MediaWiki, but this is strongly advised against, as an upgrade may end up overwriting it or change the default location of this file.

Tip: The logo image should be 135 pixels square.

How do I customize the logo in the top left corner? Can I?

The logo is a portlet block without a pBody section. It is identified by the p-logo id. The background image is specified by the wgLogo variable, which is defined in /includes/DefaultSettings.php. This location is relative to the web server root and not the system root. Redefine this in /LocalSettings.php to change the image. If set wrong there will be no image on the page; check your web server error log and adjust accordingly. However the size of the p-logo will need to be big enough for the logo if it is not to be clipped. This is set in the stylesheet, under the p-logo style, the default setting is:

#p-logo {
    z-index: 3;
    position:absolute; /*needed to use z-index */
    top: 0;
    left: 0;
    height: 155px;
    width: 12em;
    overflow: visible;
}

How do I customize the URL of the logo in the top left corner when you click it?

By default, clicking the logo takes you to the main page. If you want to change which page is the main page, edit MediaWiki:Mainpage. Or to make the link go to any arbitrary URL, for Monobook skin, edit Monobook.php and find and replace <?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href'])?> with the URL of your choice and replace <?php $this->msg('mainpage') ?> with the desired link title.

Note that a tag is on top of the logo so if you are trying to reduce the size of the logo's portlet you will also need to change the #p-logo a and #p-logo a:hover rules. The default setting for these is:

 #p-logo a,
 #p-logo a:hover {
    display: block;
    height: 200px;
    width: 12.2em;
    background-repeat: no-repeat;
    background-position: 35% 50% !important;
    text-decoration: none;
 }

This simple customization will re-define the size of all of them at once...

 #p-logo,
 #p-logo a,
 #p-logo a:hover {
    height: 75px;
}

There is one more rule controlling the amount of space between the logo and first portlet in the side column - the padding on the top of #column-one. By default this is:

#column-one { padding-top: 160px; }

If you want to remove the logo completely, comment out the wgLogo variable. Then set the column-one padding to a small value, such as 21:

#column-one { padding-top: 21px; }

You don't have to go edit the css file directly. You can go to <Your Wiki URL>?title=MediaWiki:Monobook.css. Hit edit and make your changes there. This has preference over the monobook main css.

How do I change the icon in the browser's address line (favicon)?

  • Simply replace the favicon.ico image file at the root of your wiki with the .ico image file you want.
  • Alternatively edit the $wgFavicon setting in LocalSettings.php and add $wgFavicon = /path/to/your/favicon.ico;

Rewrite Rule

If you are using a rewrite rule in .htaccess to remove "index.php" from the URL, you will also need to add an exception for .ico files. Simply add the following rule to your .htaccess:

RewriteRule .*\.ico$ - [L]

This rule must appear before the index.php rule.

Case Sensitivity

When uploading the favicon file, be sure the filename is capitalized. (That is, "Favicon.ico", not "favicon.ico".) Some browsers (e.g., Firefox) will not be able to find the file unless its name is capitalized.

How do I customize the navigation bar?

The contents of the navigation bar which appears to the left of each page using the Monobook skin are determined by the MediaWiki:Sidebar page. For information on customising these, please see Manual:Navigation bar.

How do I change the main page?

By default, MediaWiki looks for a page with the title Main Page and serves this as the default page. This can be changed by altering the contents of MediaWiki:Mainpage to point to a different title. This will not affect any of the links of the main navigation bar, including the 'Main Page' link included there at install time; to change these links, edit MediaWiki:Sidebar.

How can I hide the table of contents?

For one page

Place the magic word __NOTOC__ into the page markup.

For all pages

Edit the CSS files; locate the style for the table of contents and add display: none; to the definition.

Per user

Users can also opt to have the table of contents hidden. This is a user preference, set in Special:Preferences.

How do I change the interface text?

Interface text is altered using the MediaWiki namespace. By default, this is populated with text in the language selected during installation or upgrade. To alter the contents of a system message, edit the corresponding page in the MediaWiki namespace.

How do I change the interface language?

  1. Change the value of $wgLanguageCode in LocalSettings.php
  2. Run the rebuildMessages.php maintenance script to rebuild the MediaWiki namespace

for example under unix, run this: "php -f rebuildMessages.php rebuild" in you maintenance directory.

How do I remove the article/edit etc tabs for users who are not logged in?

You can achieve this by modifying the skin. For the default MonoBook skin, in the MonoBook.php file, search for this line:

foreach($this->data['content_actions'] as $key => $action) {

and insert after $action) this

if($this->data['loggedin']==1)

had to place inside the <?php). So it looks like this:

foreach($this->data['content_actions'] as $key => $action) if($this->data['loggedin']==1) {

To conditionally hide individual tabs, modify the code to check the value of each $key inside the foreach loop.

How do I remove the "Create an Account or Login" link at the top right of the screen?

In Monobook.php change this statement:

 foreach($this->data['personal_urls'] as $key => $item) {
   ...
  }

to:

 foreach($this->data['personal_urls'] as $key => $item) {
   if ($key != 'login') {
     ...
   }
 }

How do I hide the section edit links for users who are not logged in?

Edit your skin, eg MonoBook.php, and add this before </head>:

<?php if(!$this->data['loggedin']) { ?>
      <style>
        <!--
        .editsection { display: none; }
        -->
      </style>
 <?php } ?>

If you want to hide the links for all users including logged in users, instead edit monobook/main.css and add .editsection { display: none; }

How do I change the footer?

To add or remove items from the footer on your MediaWiki page, you must edit the skin. For example if you go in to MonoBook.php you will find the following code.

 $footerlinks = array(
   'lastmod', 'viewcount', 'numberofwatchingusers', 'credits', 'copyright',
   'privacy', 'about', 'disclaimer', 'tagline',
  );

In the above you can simply add and remove items from the array that you wish to appear in your footer, this must be done for each template though and remember it may take a while to update due to MediaWiki caches.

You can also customize the individual items by modifying certain pages or parameters:

How can I change what the <title> of each page is? Where do I make changes?

Most of the text that you want to change, can be found in the namespace of MediaWiki.

In order to change titles, texts, announcements and the such, go to Special:Allmessages, where you will see the text associated with the pages you wish to change. (As far as I can tell, you need to log in as an administrator (like the one you made when you installed) to edit the protected entries in the MediaWiki namespace.)

If you want to change the title in your browser, you need to edit MediaWiki:pagetitle. Go there and edit it just like you would any other page in your Wiki.

In recent versions of MediaWiki, MediaWiki:pagetitle is $1 - {{SITENAME}} by default. If {{SITENAME}} is producing the wrong text for you, you need to set $wgSitename in your LocalSettings.php.

If $wgSitename is correct in LocalSettings.php but {{SITENAME}} is still wrong, it may be that you're using a user-contributed language file which incorrectly sets $wgSitename to a transliteration of "Wikipedia". Edit the language file to correct this. For example, the hebrew language file is at languages/LanguageHe.php in your wiki directory.

Don't forget to clear your browser cache after you fix it.

How do I make external links open in a new window?

See http://meta.wikimedia.org/wiki/Opening_external_links_in_a_new_window.

Basic Usage

How do I edit a page?

To edit a page, simply click the edit link that appears on each page. Using the default MonoBook skin, this is in the form of a tab at the top of the page. A form will appear, containing the existing markup. When you have finished making modifications, click the Save button to commit your changes.

How do I create a new page?

There are several paths to creating a new page:

  • Create a link to the page on another page, then click on the red link which appears
  • Browse to the intended location of the page, e.g. http://www.foowiki.org/index.php/New_page and click on the edit link

On some wikis, a failed search for a page will contain a link which allows you to edit that page.

see Help:Starting a new page

How do I delete a user?

Users cannot be deleted, but they can be banned and their passwords can be scrambled.

How do I delete an old version of a page?

For normal users it is not possible to delete a version of an old page. Pages can only be moved, not deleted.

Administrators can delete version, so they can not been seen by regular users anymore. They're still stored in the database, but they can be deleted using the SpecialDeleteOldRevisions-extension.

Are there any editing tutorials available?

There are several editing tutorials available, mostly on Wikimedia sister projects, such as Wikipedia. There are also markup references, etc. available on Meta.

How do I view the printable form of a page?

MediaWiki includes stylesheets which automatically style a page appropriately when it is printed; using the print or print preview function within your browser ought to render the page in a printable form.

You can also view this printable form using the printable version link in the toolbox.

How do I reset a password?

For security, the user password hashes include "salt" to make it more difficult for someone who somehow gets hold of the hashes to crack them all at once.

For compatibility with old (pre 1.1.0) installations set this to false.


To reset the password of users when this option is set use the following query:

UPDATE user SET user_password=md5(concat(user_id,'-',md5('mynewpassword'))) where user_name ='WikiSysop' ;

user_id is the userid of the user, mynewpassword has to be your new password and WikiSysop could be an other user.

Customising Further

How can I prevent editing by anonymous users?

As of MediaWiki 1.5 onwards, there have been significant improvements to user permissions settings which make restricting access to certain functions easier and more flexible. These are controlled by the $wgGroupPermissions configuration option.

For information on using this option, see the Preventing Access page on Meta.

Why...?

...is the Help namespace empty?

We don't currently have a clean, internationalised set of help pages under a free license. A few developers are hoping to make this possible; however, the Help namespace currently ships in a blank state. You are free to add your own help pages, or copy certain of the items from Meta, e.g. the user guide or MediaWiki Handbook, these two collections being free to use under the GNU Free Documentation License.

...are some of my images not showing up after an upgrade?

Several users have reported that, following an upgrade or a moving of their wiki, several images fail to be shown inline. The files exist, and the image description pages show a MIME type of unknown / unknown and, in some cases, a warning about potentially dangerous files.

The cure for this is to run the rebuildImages maintenance script from the command line. This sets the MIME types for all files in the database, and should restore things back to normal.

...are all PNG files not being turned into thumbnails?

After upgrading to a more recent version of PHP, it is possible a different MimeMagic.php function is being used to detect file MIME types, particularly the built-in PHP function mime_content_type, which fails to detect PNG files. Search the web for mime_content_type png for information on fixing this bug at the PHP level, possibly by editing your magic.mime file.

See here for more info.

...is a search for a short keyword giving no hits

The default settings for mysql demands that the minimum length of a word to be indexed for fulltext search is 4 characters. This can be a problem if you want to search for shorter words as substrings in pages. To change this, you need to reconfigure your mysql, as described in the MySQL documentation note that indexes must be rebuilt after resetting the mysql default settings.

...can't I download MediaWiki 1.8?

MediaWiki 1.8 is in a development state at present, and has not been packaged into a general release. The code can be downloaded from Subversion if desired.

...doesn't this work? It works on Wikipedia!

Wikimedia web sites run the current alpha code, MediaWiki 1.8. See above for caveats and information on obtaining this.

Also, they work with several extensions, such as "Makesysop" and "Renameuser" (the complete list exists in a version page of one of their projects.

...do I get a 403 Forbidden error after setting permissions on my Fedora system

Fedora Core enables SELinux by default. Instructions for setting SELinux permissions for MediaWiki are available.

Anti-spam

Where do I get the spam blacklist from and how do I install it?

The spam blacklist extension can be found in Subversion. For installation instructions, consult the README file.

How do I whitelist domains from the spam blacklist?

You can list the domains you wish to whitelist on your local [[Mediawiki:Spam-whitelist]]-page.

For the format you need to use take the whitelist of the English language Wikipedia as example; wikimedia:w:en:MediaWiki:Spam-whitelist

How do I use $wgSpamRegex to block more than one string?

$wgSpamRegex is a powerful filter for page content. Adding multiple items to the regex, however, can be awkward. Consider this snippet:

$wgSpamRegexLines[] = 'display\s*:\s*none';
$wgSpamRegexLines[] = 'overflow:\s*\s*auto';
[...]
$wgSpamRegex = '/(' . implode( '|', $wgSpamRegexLines ) . ')/i';

This example code allows convenient addition of additional items to the regex without fiddling about each time. It also demonstrates two popular filters, which block some of the most common spam attacks.

Where Now?

I've found a bug or have a feature request. Where do I post it?

Bugs and feature requests should be posted on MediaZilla, our implementation of Bugzilla. Please search the database prior to posting, to avoid creating duplicate entries.

I have a question not answered here. Where do I go next?

If you've exhausted the FAQ above, please try the following:

Recommended reading