I was a tad frustrated with the lack of progress on our knowledgebase at work, which is based on static html pages (maintenance headache) and so I looked around for alternative solutions.
Long story short, I decided to setup a development wiki on a recycled workstation, and for a while it was kicking arse and taking numbers… but it didnt fit into the grand scheme of things. I recently presented it to management and they’ve decided to investigate modifying their existing Sharepoint solution to cater for the needs of my department.
Personally I’m slightly averse to this – I think Sharepoint is a great platform for content management and shared documentation (in terms of document collaboration – word, excel, visio etc documents) but as a knowledgebase system it’s just not suited. So I’ve been researching how to integrate Mediawiki and Sharepoint, just in case.
It’s a very hard topic to research, because everyone is too busy trying to draw comparisions between the two systems, when instead they should be focusing on how to make the two compliment each other. They are targetted at two totally different purposes, so instead of trying to get one to do the job of the other, just merge the two into one monster toolset. Just look at the solution names we tag the two with: Sharepoint is a “Content Management System” and wiki’s are a “Knowledgebase Platform/System/Solution” Comparing the two is like trying to compare a Fruit with a Vegetable.
Firstly, get the LDAP extension for Mediawiki, this will allow the wiki to hook into Active Directory for authentication, which is one of the major steps of integrating with Sharepoint – as many Sharepoint admins are rolling out Sharepoint for the reason of having a single sign on.
Secondly, you have to integrate the wiki within the Sharepoint environment. This is done easily enough by creating a web page view web part as per the instructions on this Intranet Journal Article
That should get you on the track to integration.
There are a couple of niggling problems as far as I can tell, for example it appears that MediaWiki doesnt like being held within an iframe, though I’ve only tested using http://en.wikipedia.org so it might be something that has been intentionally setup. My other thought is perhaps Sharepoint doesnt like the http://wikiaddress/Wiki_Name_Page convention, in which case you have to turn off the user friendly page names and go with the old http://wikiaddress/index.php style
EDIT: It appears that this is a design function of Mediawiki to prevent frames abuse, as I initially thought. You can read more in the Mediawiki FAQ
And the other problem I’ve noticed is that you cannot assign a percentage value to either the height or width of the Sharepoint iframe, which means that this happens:

Which is something you’ll have to figure out with maybe a resolution detection script to adjust an array. For my work it would be easy – all workstations in my department should be using a resolution of about 1280 * 1024 if they have LCD monitors, and if not, it’s just another reason for management to upgrade our workstations
EDIT: It appears that this has been discussed many times elsewhere, the most productive resolution can be found here
Well, I hope this ramble helps someone out, somewhere…
Addendum: Of course, you could just use Flexwiki as it’s developed by MS devs and has basic Sharepoint integration, but Flexwiki isnt as good as Mediawiki IMNSHO