MediaWiki/Notes

Manual:Short URL - MediaWiki - Short URL

http://www.mediawiki.org/wiki/Manual:Short_URL

-

Issue: Warning: The intl PECL extension is not available to handle Unicode normalization, falling back to slow pure-PHP implementation.

Solution: yum install php-intl

-

Clean Up Skins mkdir -p .archive/skins cd skins mv cologneblue CologneBlue.php modern Modern.php monobook MonoBook.php ../.archive/skins/ cd .. vi resources/Resources.php
 * 1) ugly! - have to remove skin references from Resources.php, or get warnings in log messages
 * 2) comment out sections for cologneblue, modern, monobook

-


 * 1) INSTALL MEMCACHED (or APC)
 * 1) BROWSE TO URL AND FINISH CONFIGURATION
 * 2) (ie. http://127.0.0.1/wiki)
 * 3) Specify memcache such as: 127.0.0.1:11211

mv mw-config .archive/
 * 1) CONFIG - get LocalSettings.php from installer and place in same folder as index.php

LocalSettings.php <?php
 * 1) This file was automatically generated by the MediaWiki 1.18.2
 * 2) installer. If you make manual changes, please keep track in case you
 * 3) need to recreate them later.
 * 4) See includes/DefaultSettings.php for all configurable settings
 * 5) and their default values, but don't forget to make changes in _this_
 * 6) file, not there.
 * 7) Further documentation for configuration settings may be found at:
 * 8) http://www.mediawiki.org/wiki/Manual:Configuration_settings
 * 1) Further documentation for configuration settings may be found at:
 * 2) http://www.mediawiki.org/wiki/Manual:Configuration_settings

if ( !defined( 'MEDIAWIKI' ) ) { exit; }
 * 1) Protect against web entry


 * 1) Uncomment this to disable output compression
 * 2) $wgDisableOutputCompression = true;

$wgSitename     = "Oracle"; $wgMetaNamespace = "OracleWiki";

$wgScriptPath      = ""; $wgScriptExtension = ".php";
 * 1) The URL base path to the directory containing the wiki;
 * 2) defaults for all runtime URL paths are based off of this.
 * 3) For more information on customizing the URLs please see:
 * 4) http://www.mediawiki.org/wiki/Manual:Short_URL

$wgServer          = "https://wiki.example.com";
 * 1) The protocol and server name to use in fully-qualified URLs

$wgStylePath       = "$wgScriptPath/skins";
 * 1) The relative URL path to the skins directory

$wgLogo            = "$wgStylePath/common/images/wiki.png";
 * 1) The relative URL path to the logo.  Make sure you change this from the default,
 * 2) or else you'll overwrite your logo when you upgrade!


 * 1) UPO means: this is also a user preference option

$wgEnableEmail     = false; $wgEnableUserEmail = true; # UPO

$wgEmergencyContact = "apache@wiki.example.com"; $wgPasswordSender  = "apache@wiki.example.com";

$wgEnotifUserTalk     = false; # UPO $wgEnotifWatchlist    = false; # UPO $wgEmailAuthentication = true;

$wgDBtype          = "mysql"; $wgDBserver        = "localhost"; $wgDBname          = "notes"; $wgDBuser          = "notes"; $wgDBpassword      = "notes";
 * 1) Database settings

$wgDBprefix        = "";
 * 1) MySQL specific settings

$wgDBTableOptions  = "ENGINE=InnoDB, DEFAULT CHARSET=binary";
 * 1) MySQL table options to use during installation or update

$wgDBmysql5 = false;
 * 1) Experimental charset support for MySQL 4.1/5.0.

$wgMainCacheType   = CACHE_ACCEL; $wgMemCachedServers = array;
 * 1) Shared memory settings

$wgEnableUploads = false; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert";
 * 1) To enable image uploads, make sure the 'images' directory
 * 2) is writable, then set this to true:

$wgUseInstantCommons = false;
 * 1) InstantCommons allows wiki to use images from http://commons.wikimedia.org

$wgShellLocale = "en_US.utf8";
 * 1) If you use ImageMagick (or any other shell command) on a
 * 2) Linux server, this will need to be set to the name of an
 * 3) available UTF-8 locale


 * 1) If you want to use image uploads under safe mode,
 * 2) create the directories images/archive, images/thumb and
 * 3) images/temp, and make them all writable. Then uncomment
 * 4) this, if it's not already uncommented:
 * 5) $wgHashedUploadDirectory = false;


 * 1) Set $wgCacheDirectory to a writable directory on the web server
 * 2) to make your wiki go slightly faster. The directory should not
 * 3) be publically accessible from the web.
 * 4) $wgCacheDirectory = "$IP/cache";

$wgLanguageCode = "en";
 * 1) Site language code, should be one of the list in ./languages/Names.php

$wgSecretKey = "6a87c9285f67ae5eda4858d5df56310ded8fe81cbd10d8f8f57c3a17c63fcbdd";

$wgUpgradeKey = "3715f50a4b6302d1";
 * 1) Site upgrade key. Must be set to a string (default provided) to turn on the
 * 2) web installer while LocalSettings.php is in place

$wgDefaultSkin = "vector";
 * 1) Default skin: you can change the default skin. Use the internal symbolic
 * 2) names, ie 'standard', 'nostalgia', 'cologneblue', 'monobook', 'vector':

$wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright $wgRightsUrl = ""; $wgRightsText = ""; $wgRightsIcon = "";
 * 1) For attaching licensing metadata to pages, and displaying an
 * 2) appropriate copyright notice / icon. GNU Free Documentation
 * 3) License and Creative Commons licenses are supported so far.
 * 1) $wgRightsCode = ""; # Not yet used

$wgDiff3 = "/usr/bin/diff3";
 * 1) Path to the GNU diff3 utility. Used for conflict resolution.

$wgResourceLoaderMaxQueryLength = -1;
 * 1) Query string length limit for ResourceLoader. You should only set this if
 * 2) your web server has a query string length limit (then set it to that limit),
 * 3) or if you have suhosin.get.max_value_length set in php.ini (then set it to
 * 4) that value)

$wgGroupPermissions['*']['createaccount'] = false; $wgGroupPermissions['*']['edit'] = false; $wgGroupPermissions['*']['read'] = false;
 * 1) The following permissions were set based on your choice in the installer


 * 1) End of automatically generated settings.
 * 2) Add more configuration options below.


 * 1) MODIFICATIONS BY KENNETH ##

$wgScriptPath      = ""; $wgScript          = "$wgScriptPath/index.php"; $wgRedirectScript  = "$wgScriptPath/redirect.php"; $wgArticlePath     = "$wgScriptPath/$1";
 * 1) http://meta.wikimedia.org/wiki/Using_a_very_short_URL

$wgEnableMWSuggest = true;
 * 1) http://www.mediawiki.org/wiki/Manual:$wgEnableMWSuggest - Enable AJAX autocomplete search suggestions

$wgAllowExternalImages = true;
 * 1) Embedding external images
 * 2) http://meta.wikimedia.org/wiki/Help:Images_and_other_uploaded_files#Embedding_external_images

$wgNamespacesWithSubpages[NS_MAIN] = true;
 * 1) Enable sub pages - http://www.mediawiki.org/wiki/Help:Subpages

<?php
 * 1) This file was automatically generated by the MediaWiki 1.22.6
 * 2) installer. If you make manual changes, please keep track in case you
 * 3) need to recreate them later.
 * 4) See includes/DefaultSettings.php for all configurable settings
 * 5) and their default values, but don't forget to make changes in _this_
 * 6) file, not there.
 * 7) Further documentation for configuration settings may be found at:
 * 8) http://www.mediawiki.org/wiki/Manual:Configuration_settings
 * 1) Further documentation for configuration settings may be found at:
 * 2) http://www.mediawiki.org/wiki/Manual:Configuration_settings

if ( !defined( 'MEDIAWIKI' ) ) { exit; }
 * 1) Protect against web entry


 * 1) Uncomment this to disable output compression
 * 2) $wgDisableOutputCompression = true;

$wgSitename = "Omnia"; $wgMetaNamespace = "Omnia";

$wgScriptPath = ""; $wgScriptExtension = ".php";
 * 1) The URL base path to the directory containing the wiki;
 * 2) defaults for all runtime URL paths are based off of this.
 * 3) For more information on customizing the URLs
 * 4) (like /w/index.php/Page_title to /wiki/Page_title) please see:
 * 5) http://www.mediawiki.org/wiki/Manual:Short_URL

$wgServer = "http://omnia.oeey.com";
 * 1) The protocol and server name to use in fully-qualified URLs

$wgStylePath = "$wgScriptPath/skins";
 * 1) The relative URL path to the skins directory

$wgLogo            = "$wgStylePath/common/images/wiki.png";
 * 1) The relative URL path to the logo.  Make sure you change this from the default,
 * 2) or else you'll overwrite your logo when you upgrade!


 * 1) UPO means: this is also a user preference option

$wgEnableEmail = false; $wgEnableUserEmail = false; # UPO

$wgEmergencyContact = "omnia@oeey.com"; $wgPasswordSender = "omnia@oeey.com";

$wgEnotifUserTalk = false; # UPO $wgEnotifWatchlist = false; # UPO $wgEmailAuthentication = false;

$wgDBtype = "mysql"; $wgDBserver = "localhost"; $wgDBname = "notes"; $wgDBuser = "notes"; $wgDBpassword = "notes";
 * 1) Database settings

$wgDBprefix = "";
 * 1) MySQL specific settings

$wgDBTableOptions = "ENGINE=InnoDB, DEFAULT CHARSET=binary";
 * 1) MySQL table options to use during installation or update

$wgDBmysql5 = false;
 * 1) Experimental charset support for MySQL 5.0.

$wgMainCacheType = CACHE_ACCEL; $wgMemCachedServers = array;
 * 1) Shared memory settings

$wgEnableUploads = false; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert";
 * 1) To enable image uploads, make sure the 'images' directory
 * 2) is writable, then set this to true:

$wgUseInstantCommons = false;
 * 1) InstantCommons allows wiki to use images from http://commons.wikimedia.org

$wgShellLocale = "en_US.utf8";
 * 1) If you use ImageMagick (or any other shell command) on a
 * 2) Linux server, this will need to be set to the name of an
 * 3) available UTF-8 locale


 * 1) If you want to use image uploads under safe mode,
 * 2) create the directories images/archive, images/thumb and
 * 3) images/temp, and make them all writable. Then uncomment
 * 4) this, if it's not already uncommented:
 * 5) $wgHashedUploadDirectory = false;


 * 1) Set $wgCacheDirectory to a writable directory on the web server
 * 2) to make your wiki go slightly faster. The directory should not
 * 3) be publically accessible from the web.
 * 4) $wgCacheDirectory = "$IP/cache";

$wgLanguageCode = "en";
 * 1) Site language code, should be one of the list in ./languages/Names.php

$wgSecretKey = "b90e402aef4cfafbe8b3996c0842621634f1ff3f2417cc8d4535a43fe6a0757d";

$wgUpgradeKey = "f0f433d17034bf37";
 * 1) Site upgrade key. Must be set to a string (default provided) to turn on the
 * 2) web installer while LocalSettings.php is in place

$wgDefaultSkin = "vector";
 * 1) Default skin: you can change the default skin. Use the internal symbolic
 * 2) names, ie 'cologneblue', 'monobook', 'vector':

$wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright $wgRightsUrl = "http://creativecommons.org/licenses/by/3.0/"; $wgRightsText = "Creative Commons Attribution"; $wgRightsIcon = "{$wgStylePath}/common/images/cc-by.png";
 * 1) For attaching licensing metadata to pages, and displaying an
 * 2) appropriate copyright notice / icon. GNU Free Documentation
 * 3) License and Creative Commons licenses are supported so far.

$wgDiff3 = "/usr/bin/diff3";
 * 1) Path to the GNU diff3 utility. Used for conflict resolution.

$wgGroupPermissions['*']['createaccount'] = false; $wgGroupPermissions['*']['edit'] = false;
 * 1) The following permissions were set based on your choice in the installer


 * 1) End of automatically generated settings.
 * 2) Add more configuration options below.


 * 1) MODIFICATIONS BY KENNETH ##

$wgScriptPath      = ""; $wgScript          = "$wgScriptPath/index.php"; $wgRedirectScript  = "$wgScriptPath/redirect.php"; $wgArticlePath     = "$wgScriptPath/$1";
 * 1) http://meta.wikimedia.org/wiki/Using_a_very_short_URL

$wgAllowExternalImages = true;
 * 1) Embedding external images
 * 2) http://meta.wikimedia.org/wiki/Help:Images_and_other_uploaded_files#Embedding_external_images

$wgNamespacesWithSubpages[NS_MAIN] = true;
 * 1) Enable sub pages - http://www.mediawiki.org/wiki/Help:Subpages

$wgRightsUrl = "http://creativecommons.org/licenses/by-sa/3.0/"; $wgRightsText = "Creative Commons Attribution-ShareAlike"; $wgRightsIcon = "{$wgStylePath}/common/images/cc-by-sa.png";
 * 1) CC License

Restricting Access

 * Restrict pages under MediaWiki 1.5.x
 * Page access restriction with MediaWiki 1.4, 1.5, 1.6, 1.7
 * Hidden pages 1.4 1.5

This article had some useful information...
 * Preventing Access 1.5

The problem with this method is the text in the protected pages can still be searched on, and displayed in the search results.
 * Help:Custom namespaces

MediaWiki Cite Extention
Cite.php

Cite

"Cite.php is a Cite extension that adds two parser hooks to MediaWiki, &lt;ref&gt; and &lt;references&gt; these operate together to add citations to pages."

Installation
To install the Cite extension from CVS, change to your MediaWiki installation directory and do the following:

cvs -d :pserver:anonymous@wikipedia.cvs.sourceforge.net:/cvsroot/wikipedia/ login cvs -d :pserver:anonymous@wikipedia.cvs.sourceforge.net:/cvsroot/wikipedia/ co extensions/Cite

Wiki Admin Guides
System Administrator's Handbook

Wiki Maintenance Guide

MediaWiki is slow, how can I make it faster?
MediaWiki is slow, how can I make it faster?


 * First you should try a PHP cache engine such as eAccelerator or APC. It will save the parsed PHP scripts and enhance performance a lot (this is something you should use anyway on any PHP installation with non-trivial traffic). Zend Platform also contains a bytecode cache, however its "dynamic content caching" is not supported in MediaWiki at the current time.
 * Use Squid or MediaWiki's native file cache ($wgUseFileCache = true) to cache whole pages
 * Memcached will provide some performance benefit, especially for heavily viewed sites. See also the cache section of the configuration settings.
 * See the Reduction section of the configuration setting.
 * See the $wgUseDatabaseMessages setting.
 * Switching the MySQL table type to MyISAM may be faster for single-user wikis on lower-end computers. See also: MySQL Storage Comparison.
 * Disable ImageMagick in LocalSettings.php $wgUseImageMagick, though this will cause reduced thumbnail quality. ImageMagick imposes a performance penalty during various page views and edits and can slow down bulk uploads.
 * For a heavy concurrent write load, InnoDB is essential. Set $wgAntiLockFlags = ALF_NO_LINK_LOCK | ALF_NO_BLOCK_LOCK to reduce lock contention, at the expense of introducing occasional inconsistencies. Use memcached not the default MySQL-based object cache.

Caching
Use: Accelerator, APC, XCache or WinCache. (for object caching support)


 * MediaWiki Caching Options
 * Here are the available CACHE constants, as defined in Defines.php:
 * CACHE_ANYTHING - Use anything, as long as it works
 * CACHE_NONE - Do not cache
 * CACHE_DB - Store cache objects in the DB
 * CACHE_MEMCACHED - MemCached, must specify servers in $wgMemCachedServers
 * CACHE_ACCEL - eAccelerator, mmTurck or APC, whichever is available
 * CACHE_DBA - Use PHP's DBA extension to store in a DBM-style database
 * http://katlas.math.toronto.edu/wiki/Katlas_installation_notes
 * http://forums.asmallorange.com/index.php?showtopic=9874
 * http://wikitravel.org/mw/extensions/OpenID/README


 * Wikipedia:Bypass your cache
 * "Wikipedia saves bandwidth by instructing your web browser to store many parts of the site in its local cache (normally on your hard drive), so that they are downloaded only once. This includes articles you've previously viewed, images previously displayed, style sheets, JavaScript, etc."


 * MediaWiki:Clearyourcache
 * MediaWiki talk:Clearyourcache
 * "Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: press Cmd-Opt-E."


 * How do I purge cached pages?
 * 1) You can use ?action=purge on individual pages to update their cache dates.
 * 2) There is a global $wgCacheEpoch variable which can be set in LocalSettings.php to invalidate all prior cache entries (see DefaultSettings.php)
 * 3) If you want to purge all pages in the parser cache, truncate objectcache table from the wiki database. You may use this command:
 * 4) *TRUNCATE TABLE objectcache;
 * 5) *Hint: If this fails, you might be using a prefix for your database tables!
 * 6) A shell script such as this may be used

PHP eAccelerator
PHP eAccelerator

Home: http://eaccelerator.net/


 * "eAccelerator is a free open-source PHP accelerator & optimizer. It increases the performance of PHP scripts by caching them in their compiled state, so that the overhead of compiling is almost completely eliminated. It also optimizes scripts to speed up their execution. eAccelerator typically reduces server load and increases the speed of your PHP code by 1-10 times.


 * eAccelerator was born in December 2004 as a fork of the Turck MMCache project. Turck MMCache was created by Dmitry Stogov and much of the eAccelerator code is still based on his work.


 * eAccelerator stores compiled PHP scripts in shared memory and executes code directly from it. It creates locks only for a short time, while searching for a compiled PHP script in the cache, so one script can be executed simultaneously by several engines. Files that can't fit in shared memory are cached on disk only. "

Install PHP eAccelerator:


 * DAG - php-eaccelerator

wget http://dag.wieers.com/rpm/packages/php-eaccelerator/php-eaccelerator-5.1.6_0.9.5.2-4.el5.rf.i386.rpm rpm -Uvh php-eaccelerator-5.1.6_0.9.5.2-4.el5.rf.i386.rpm rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm yum install php-eaccelerator service httpd restart
 * 1) RPM Method:
 * 1) Yum Method:
 * 1) Restart apache service

Configure MediaWiki: $wgMainCacheType = CACHE_ACCEL;
 * 1) MediaWiki LocalSettings.php

To test: phpinfo.php: 

echo "" | php | grep "eAccelerator support"

This program makes use of the Zend Scripting Language Engine: Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies with eAccelerator v0.9.5.2, Copyright (c) 2004-2006 eAccelerator, by eAccelerator

eAccelerator eAccelerator support	enabled Version 	0.9.5.2

---

Manually Build PHP eAccelerator

NOTE: "The shared memory caching functions (eaccelerator_get and eaccelerator_put among others) have been removed from 0.9.6. You will need to stick with 0.9.5.3 and configure it appropriately"

NOTE: "The latest release, 0.9.6.1, features support for PHP 5.3 and also works with PHP 5.1 and 5.2. The previous 0.9.5 branch supports PHP 4 and all PHP 5 releases including 5.2. In older releases, the encoder will only work with PHP versions from the 4.x.x branch." 

PHP eAccelerator on SourceForge - http://sourceforge.net/projects/eaccelerator/

yum install php53-devel gcc make

wget http://downloads.sourceforge.net/project/eaccelerator/eaccelerator/eAccelerator%200.9.6.1/eaccelerator-0.9.6.1.zip unzip eaccelerator-0.9.6.1.zip cd eaccelerator-0.9.6.1

phpize

./configure \ --enable-eaccelerator=shared \ --with-php-config=/usr/bin/php-config \ --with-eaccelerator-shared-memory
 * 1) see fix http://www.vbseo.com/blogs/danny-bembibre/enable-caching-functions-get-put-eaccelerator-45/  (works only on on 0.9.5.*)

make clean && make

sudo make install
 * 1) Installing shared extensions:     /usr/lib/php/modules/

cat > /etc/php.d/eaccelerator.ini <" | php | grep "eAccelerator support" echo "" | php
 * 1) test:
 * 1) eAccelerator support => enabled
 * 1) bool(true)

cat > test.php < EOF php test.php
 * 1) test
 * 1) should list functions (especially _get and _put) and output '1024'

MediaWiki Failes to Detect eAccelerator
The PHP eAccelerator will make the MediaWiki faster, but MediaWiki will not be able to detect it for it's own seperate caching purposes:


 * "eAccelerator caches php bytecode to speed its execution. The scripts don't need to do anything special about it, so if you have eAccelerator working, it will speed up MediaWiki even if MediaWiki is not aware of it.


 * MediaWiki detects eAccelerator in order to use it for caching its own data. That's the bit that is disabled if MediaWiki can't find it. The issue is, mediawiki detects it by checking for the existance of eaccelerator_get. Since it would need to call that function in order to use it for caching, it can't use it if php doesn't recognise that function. What's the output of var_dump(function_exists('eaccelerator_get')); on a single php file?


 * If it works there, there's something scary for mediawiki not detecting it. If it reports the function doesn't exist, you should probably ask to eAccelerator guys about it."

Which returns: bool(false)


 * "These functions have been disabled by default. You should enable them with the configure command. Look at configure --help for the right options. These functions have been disabled because when leaving them on without any precautions these functions can be used for a local DoS attack by keep putting data in shared memory. "


 * "Having to enable them at configure time is not too user friendly, a configuration option at global php.ini would have been people preferable for people like Peter installing from packages.


 * It may be interesting to have the MediaWiki installer detect eAccelerator built without --with-eaccelerator-shared-memory to provide a more accurate message. "

APC
PHP: Installation - Manual - http://www.php.net/manual/en/apc.installation.php

sudo yum install php-pear pcre-devel sudo pecl install apc echo "extension=apc.so" > /etc/php.d/apc.ini << EOF extension=apc.so apc.enabled=1 EOF

echo "" | php | grep "APC Support" echo "" | php | grep "apc.enabled"
 * 1) test - not sure why the first is false?  builtin?
 * 1) APC Support => disabled
 * 1) apc.enabled => On => On

Testing: /www/notes/includes/installer/Installer.php protected $objectCaches = array(               'xcache' => 'xcache_get',                'apc' => 'apc_fetch',                'eaccel' => 'eaccelerator_get',                'wincache' => 'wincache_ucache_get'        );

echo "" | php | grep eaccelerator_get

echo "" | php | grep apc_fetch
 * 1)     [4] => apc_fetch

echo "" | php

Statistics: use the apc.php script cp /usr/share/pear/apc.php /www

Tree Options

 * http://meta.wikimedia.org/wiki/User:Duesentrieb/CategoryTree
 * http://www.mediawiki.org/wiki/Extension:CategoryTree
 * http://clc-wiki.net/wiki/Planning:Treeview_skin:Feedback

Search for Three Letter Words
"By default MediaWiki uses MySQL and the default FULLTEXT indexing uses built-in stop words and a minimum word length of four. A list of the stop words is available but are the usual thing (the, and, one_, etc.). You can set your own stop words by setting the ft_stopword_file system variable but the default stop words may be sufficient to your purposes. However, there are many three letter words which you may like to index (_SVN, RSS, FAQ, etc.). In order to do this you need to change the FULLTEXT indexing to a minimum word length of three. To do this edit the my.ini and add to the end of the [mysqld] section:"

[mysqld] ft_min_word_len = 3
 * 1) Minimum word length to be indexed by the full text search index.
 * 2) You might wish to decrease it if you need to search for shorter words.
 * 3) Note that you need to rebuild your FULLTEXT index, after you have
 * 4) modified this value.

"Restart MySQL, and then reindex the relevant tables. The tables are ${mw_}searchindex where ${mw_} is the table prefix for the MediaWiki instance (there will be one searchindex table for each instance). To reindex the table, log into the server and start up MySQL Administrator. Log in as root and click Catalogs, then wikidb. Select the table and click the Maintenance button. Select Repair Tables and press Next. Check the Quick option under Repair Method and click Repair Tables. Repeat for each MediaWiki instance." 

Reindex table: use [database]; ANALYZE TABLE searchindex; REPAIR TABLE searchindex; OPTIMIZE TABLE searchindex;

Removing default search limitations in MediaWiki and MySQL « Delirious Development Dialysis - http://leefw.wordpress.com/2008/03/05/getting-past-default-searching-limitations-in-mediawiki-and-mysql/

Editing the MediaWiki configuration. Locate the LocalSettings.php file in your MediaWiki installation directory, usually a subdirectory of your web server’s document root, say /htdocs on Apache. Edit the file and add the variable wgDBminWordLen to it. Set it’s value to 3, so: $wgDBminWordLen = 3;

REPAIR TABLE searchindex QUICK;

Subpages
"subpages are pages separated with a "/" (a slash) from their 'parent' page. Making a new link that begins with a / (slash) is the common way to start a subpage. The page to which this link points is considered "subordinate" to its host page, and is titled and linked as Parentpage/Subpage . It is possible to create a subpage of a subpage (or a sub-subpage). At the top of each subpage or sub-subpage, you can find a backlink (a.k.a. breadcrumb) to the higher levels of the page."

Wikipedia:Subpages - Wikipedia - http://en.wikipedia.org/wiki/Wikipedia:Subpages