Arbores MediaWiki installation

Jump to navigation Jump to search

Introduction

This page includes installation notes for this wiki.

Most wiki configuration is done in a LocalSettings.php file

  • You could edit a file locally and transfer it via SFTP or edit it using ssh and the nano editor.

Some configurations are done through wiki pages, e.g. messages, end-user style. the menu-bar, etc.

URL configuration

Edit Localsettings.php and verify the URL (this can change later, e.g. if you move to a subdomain

$wgServer = "http://w.arbores.tech";

Enable File upload

## To enable image uploads, make sure the 'images' directory
## is writable, then set this to true:
$wgEnableUploads  = true;
$wgGenerateThumbnailOnParse = false;

Change permission

By default, anyone can create an account and contribute. To change:

$wgGroupPermissions['*']['createaccount']   = false;
$wgGroupPermissions['*']['read']            = true;
$wgGroupPermissions['*']['edit']            = false;
$wgGroupPermissions['*']['createpage']      = false;
$wgGroupPermissions['*']['move']            = false;
$wgGroupPermissions['*']['createtalk']      = false;
$wgGroupPermissions['*']['upload']          = false;
$wgGroupPermissions['*']['reupload']        = false;
$wgGroupPermissions['*']['reupload-shared'] = false;
$wgGroupPermissions['*']['minoredit']       = false;

$wgGroupPermissions['sysop' ]['move']            = true;
$wgGroupPermissions['sysop' ]['read']            = true;
$wgGroupPermissions['sysop' ]['edit']            = true;
$wgGroupPermissions['sysop' ]['createpage']      = true;
$wgGroupPermissions['sysop' ]['createtalk']      = true;
$wgGroupPermissions['sysop' ]['upload']          = true;
$wgGroupPermissions['sysop' ]['reupload']        = true;
$wgGroupPermissions['sysop' ]['reupload-shared'] = true;
$wgGroupPermissions['sysop' ]['minoredit']       = true;
$wgGroupPermissions['sysop' ]['userrights']  = true;
$wgGroupPermissions['sysop' ]['noratelimit'] = true;

Short URL

On the hosting side, you will need a subdomain if possible (not necessary though)

Step 1: Add a subdomain

For Infomaniak hosting: Read

Step 2: Fix the site URL (if it was installed with the provider's "manager")

Step 3: Add rewrite rules for the subdomain

In the .htaccess root file, add:

RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com [NC]
RewriteCond %{DOCUMENT_ROOT}/%1/ -d
RewriteCond %1::%{REQUEST_URI} !^(.*?)::/\1/?
RewriteRule "^(.*)$" "%{DOCUMENT_ROOT}/%1/$1" [L]

On the wiki side you will have to do two things, add a rewrite rule and change Localsettings.php

Step 4: Add rewrite Rules

  • Read: Short URL
  • Use the MediaWiki ShortURL Builder and follow its instructions. However it won't work if the wiki sits in a subdirectory since it will redirect all URLs containing a w to the wiki :(

There was one major mistake in the generated list, fixed on lines 1 and 2

RewriteRule ^/wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L]
RewriteRule ^/w %{DOCUMENT_ROOT}/w/index.php [L]

# RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
# RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
# RewriteRule ^/w/images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2 [L,QSA,B]

# RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
# RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
# RewriteRule ^/w/images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/w/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B]

Builtin extensions

Server requirements

An installed wiki comes with preinstalled extensions that you can enable. However, some of these do not work on shared hosting, e.g.

  • Visual editor requires a node.js server

Others require a change in server configuration, e.g.

  • SyntaxHighlight requires shell access. To enable this on Infomaniak, enable it (but evaluate the risks, if a portal is hacked the others will be too).
open the Manager (manager.infomaniak.com)
go to Hosting
click on the hosting/domain name concerned
under Sites, click on the domain name of the site concerned
click onA dvanced parameters
click on the PHP Tab
put exect, shell_exec, etc. on.

CategoryTree

wfLoadExtension ('CategoryTree');

Cite

https://www.mediawiki.org/wiki/Extension:Cite

Makes <ref> </ref> for citations available.

Read Help:Cite

wfLoadExtension ('Cite');

CiteThisPage

wfLoadExtension ('CiteThisPage');

CodeEditor

(to test/do)

wfLoadExtension ('CodeEditor');

InputBox

(to test/do)

wfLoadExtension ('InputBox');

MultimediaViewer

(to test/do)

wfLoadExtension ('MultimediaViewer');

ParserFunctions

Adds some extra language elements to the parser. Needed for some templates.

wfLoadExtension ('ParserFunctions');

ConfirmEdit

(to test/do) wfLoadExtension ('ConfirmEdit');

Gadgets

wfLoadExtension ('Gadgets');

ImageMap

wfLoadExtension ('ImageMap');

Lockdown

wfLoadExtension ('Lockdown');

PageImages

wfLoadExtension ('PageImages');

Interwiki

wfLoadExtension ('Interwiki');

LocalisationUpdate

wfLoadExtension ('LocalisationUpdate');

Nuke

wfLoadExtension ('Nuke');

OATHAuth

wfLoadExtension ('OATHAuth');

Poem

wfLoadExtension ('Poem');

Scribunto

wfLoadExtension ('Scribunto');

TemplateData

wfLoadExtension ('TemplateData');

PdfHandler

wfLoadExtension ('PdfHandler');

Renameuser

wfLoadExtension ('Renameuser');

ReplaceText

wfLoadExtension ('ReplaceText');

SecureLinkFixer

wfLoadExtension ('SecureLinkFixer');

SpamBlacklist

wfLoadExtension ('SpamBlacklist');

TitleBlacklist

wfLoadExtension ('TitleBlacklist');

Syntaxhighlight

https://www.mediawiki.org/wiki/Extension:SyntaxHighlight

In Linux, set execute permissions for the pygmentize binary. You can use an FTP client or the following shell command to do so:

chmod a+x /path/to/extensions/SyntaxHighlight_GeSHi/pygments/pygmentize

In Local Settings, add:

wfLoadExtension( 'SyntaxHighlight_GeSHi' );

TextExtracts

wfLoadExtension ('TextExtracts');

VisualEditor

wfLoadExtension ('VisualEditor');

WikiEditor

Adds some useful extras to the standard built-in wiki code editor. Priority installation.

wfLoadExtension ('WikiEditor');

List of extensions enabled with config parameters