MediaWiki URLs: Short, Clean and Beautiful

Search engines love short and clean URLs. Learn how to change default MediaWiki URLs into short URLs while keeping the default URLs also functional. The solution works using .htaccess and LocalSettings.php files.
6SHARES

I run several websites which are based on MediaWiki platform. MediaWiki does provide the option of having short URLs that look much cleaner and therefore beautiful. A couple of my earliest MediaWiki websites  did not use pretty URLs simply because I was too lazy and was a bit confused while reading the relevant tutorial given in the MediaWiki help.

Lately, I decided to finally make changes in my websites and implement short URLs. MediaWiki short URLs hide the index.php?title= part of the web address. Shorter URLs are easier to read and easier to remember. These web addresses are great especially for MW websites that use non-Latin character sets.

A typical, long, ugly (and default) MediaWiki URL:

www.kavitakosh.org/kk/index.php?title=Problem_in_Reading_Hindi_Font

…and here is Short MediaWiki URL: clean and pretty:

www.kavitakosh.org/kk/Problem_in_Reading_Hindi_Font

Search engines love beautiful URLs which hide the technical details (like parameters and values attached with URL strings).

At first, I was wary that this beautification of URLs might harm my website’s Google and traffic ranks because my websites have been there in the massive world of Internet for more than five years. And in fact it is always better not to change a URL once it is created. But by using redirection through .htaccess file we can safely make these changes without greatly harming search engine rankings.

Cherry on the top is that it is very easy and straightforward to implement short URLs. Here is what you need to do (please note that these instructions are for the MediaWiki installations running on Apache server only):

STEP 1: Add the following code to .htaccess file:

RewriteEngine On

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d

RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/MW-DIRECTORY/index.php [L]

Replace MW-DIRECTORY with the name of directory wherein you have installed MediaWiki (i.e. the directory which contains MediWiki files and folders like extensions, cache, maintenance, skins etc.)

Where to put .htaccess? The .htaccess file should be placed in the MediaWiki installation directory.

STEP 2: Now add the following code in LocalSettings.php

$wgScriptPath       = “/MW-DIRECTORY“;

$wgScriptExtension  = “.php”;

$wgArticlePath = “{$wgScriptPath}/$1″;

$wgUsePathInfo = true;

Replace MW-DIRECTORY with the MediaWiki installation directory. Your LocalSettings.php file might already contain the first two lines of the code given above. If these lines are already present –just add the second and third line right below the existing lines.

And that’s it! Now your old-and-long-and-ugly URLs will also work because .htaccess will redirect old URLs to the requested page.

Once this is done, and if your MediaWiki site is working too slow, you may also want to see my tutorials on how to improve MediaWiki performance.

Thank you for using TechWelkin. Please let me know what you think!

6SHARES