[Mediawiki-l] Please help to make a rewrite rule

Michael Wozowoy strannik at cnt.ru
Fri Jan 29 21:15:23 UTC 2010


     Hello!

I have Mediawiki 1.15 installed with Apache 2.2.

I have created some virtual namespace (similar to categories) called Rubric.
The articles can belong to one ore more rubrics. I want to use this namespace
instead of Categories by some reasons.

And I need to show these Rubrics' content. For example:
http://mysite.com/wiki/Rubric:Economy/
should open a list of articles under Economy rubric.
I've created a special page which does that. So, now I can open
http://mysite.com/wiki/Special:Rubric/Economy
and view Economy's content. It works, no problem.

But I want to get rid of Special namespace in the URL! Can I do that?
I've tried several RewriteRules in the apache's .htacces, but failed so far...
The last try is:

=============================================================================
RewriteEngine On
RewriteRule wiki/Rubric:(.*)$ wiki/Special:Rubric/$1
RewriteRule wiki/(.*)$ w/index.php?title=$1 [L]
=============================================================================

It does not work. When I'm opening
http://mysite.com/wiki/Rubric:Economy/
this rule still opens "Rubric:Economy" instead of "Special:Rubric/Economy" and
says "there is no text on the page blah-blah-blah..."
What do I do wrong?


NOTE: I need an internal redirect. The external one works, but that's not what I
want. I mean, this one:

RewriteRule wiki/Rubric:(.*)$ wiki/Special:Rubric/$1 [R,L]

works great of course, but it results in that the Special namespace presents in
the URL.

     Best regards.
                  Michael Wozowoy

          e-mail:  strannik at cnt.ru




More information about the MediaWiki-l mailing list