Check out my first novel, midnight's simulacra!
MediaWiki: Difference between revisions
m (1 revision) |
|||
(No difference)
|
Revision as of 07:32, 28 January 2009
I'm using the MediaWiki software from the WikiMedia Foundation to power my wikis. MediaWiki is written in PHP5, and thus precludes the use of a multi-threaded version of Apache.
Installing MediaWiki
The following information is largely Debian-specific.
- Have handy the administrator account/password for your MySQL installation.
- I advise you to install MySQL before MediaWiki, not as a single apt step.
- DO NOT explicitly create the MediaWiki databases / users yourself.
- Grab the necessary packages:
- mediawiki and mediawiki-math; mediawiki-extensions is also advised.
- In addition, memcached, imagemagick and tetex-base should be installed if they're not automatically dragged in.
- Don't grab the versioned packages (ie mediawiki1.10); the mediawiki package will depend on the proper packages for your version of Debian.
- Unless you really need a particular version.
- If you install the versioned packages explicitly, upgrades might eat your configuration. You have been warned.
- Symlink /var/lib/mediawiki to /var/www/mediawiki with ln -s.
- This isn't in the install docs, and might be incorrect/suboptimal FIXME.
- Go to http://yourhost/mediawiki. You should be greeted with a link to the config page. Follow it.
- Configure that bitch (See Accelerators below).
- I've seen no problems related to the experimental UTF-8 encoding for use with MySQL 5.0.
- Following configuration, run chmod 640 /var/lib/mediawiki/config/LocalSettings.php && ln -sf /var/lib/mediawiki/config/LocalSettings.php /etc/mediawiki
- Go to http://yourhost/mediawiki. You should be greeted with your new main page.
Accelerators
- MediaWiki: kinda slow.
- XCache is rumoured to be the best choice.
- On Debian, you'll need edit the default /etc/php5/xcache.ini to provide non-0 size values
- memcached works out of the box, but doesn't seem very effective
- You want the memcache server at 127.0.0.1:11211
Postinstallation
- Set a wiki logo: sudoedit /etc/mediawiki/LocalSettings.php and add
$wgLogo = "/mediawiki/skins/common/images/wiki.jpg";
with the appropriate path to your logo- Be sure the image is world-readable, 135x135 and has a correct extension
- The path is relative to your Apache's configured DocumentRoot
- If applicable, set the image background transparent so it'll look better
- Using the Gimp, add an Alpha layer, select the background with the Magic Wand, and Clear it
- Enable uploads: sudoedit /etc/mediawiki/LocalSettings.php and add
$wgEnableUploads = true;
- Support uploading non-images: sudoedit /etc/mediawiki/LocalSettings.php and add
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'doc', 'pdf', 'ps', 'xls', 'txt' );
- Supposedly, all types can be allowed via:
$wgCheckFileExtensions = false;
$wgStrictFileExtensions = false;
$wgVerifyMimeType = false;
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' );
$wgFileBlacklist = array();
$wgMimeTypeBlacklist= array();
- Support inline equations: sudoedit /etc/mediawiki/LocalSettings.php and change
$wgUseTeX = false;
so that it uses true instead- The texex-bin package must be installed for this to work!
- Disable editing unless logged in: sudoedit /etc/mediawiki/LocalSettings.php and add
$wgGroupPermissions['*']['edit'] = false;
- Optionally, disable new accounts unless logged in: sudoedit /etc/mediawiki/LocalSettings.php and add
$wgGroupPermissions['*']['createaccount'] = false;
- Optionally, rename the main page: first, move the main page to the new title
- Load Mediawiki:mainpage, and update it to reflect this change
- Optionally, remove the 'discussion' tab:
- Edit mediawiki/includes/SkinTemplate.php, and comment out the following:
$content_actions['talk'] = $this->tabAction(
$talkpage,
'talk',
$this->mTitle->isTalkPage() && !$prevent_active_tabs,
,
true);
Maintenance
- Most everything can be done via the Special Pages page; learn it
- Check the Special:Lonelypages list to watch for orphaned pages; these pages are unreachable from any other page.
- This almost always indicates a mistyped or misspelled attempt to link to this page; check the Special:Wantedpages list
- Check the Special:Deadendpages list to watch for dead-end pages; these pages link to no other pages.
- This almost always indicated a failure to add a relevant link, or a short entry (see below)
- Check the Special:Shortpages list to watch for short pages; these pages might need more information.
- See if the page can't be combined with another one, or if more info isn't sensible to add
- How to check for dead external links? FIXME
Extensions
A variety of extensions are available for MediaWiki. The most popular and stable are collected in the Debian package mediawiki-extensions, including (as of 1.10) GeSHi, Cite, inputbox, and ParserFunctions. By default, none are enabled -- the package only provides the extensions; it does not enable them!
Enabling Debian-Supported Extensions
- Install the mediawiki-extensions package.
- Enter the /etc/mediawiki-extensions/extensions-enabled directory.
- Enable extensions by creating symbolic links to contents of the /etc/mediawiki-extensions/extensions-available directory.
- To enable all extensions, run: for i in ../extensions-available/* ; do sudo ln -s /etc/mediawiki-extensions/extensions-available/`basename $i` . ; done
Enabling other Extensions
- Download the extension to /var/lib/mediawiki1.10/extensions
- See /var/lib/mediawiki/extensions/README for up-to-date information on enabling it