Jump to content

Arbores MediaWiki installation: Difference between revisions

mNo edit summary
Line 258: Line 258:
     return true;
     return true;
   }
   }
== Transfer files from another wiki ==
Dump and retrieve Wikipages. This will not include files
Get files
* Read https://www.mediawiki.org/wiki/Manual:Grabbers


== List of extensions enabled with config parameters ==
== List of extensions enabled with config parameters ==

Revision as of 18:34, 8 April 2021

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.

Important help pages for mediawiki

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

Also read Manual:thumb_handler.php

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

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');

TinyMCE Visual Editor

The standard Wysiwyg editor cannot be installed on a hosted service since it requires node.js (a JavaScript server)

Install with git:

cd extensions
git clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/TinyMCE

In LocalSettings.php, add:

require_once "$IP/extensions/TinyMCE/TinyMCE.php";
$wgTinyMCEEnabled = true;

Patch to disable the WikiEditor from adding its bar on top (read this and this small patch

Edit file extensions/WikiEditor/includes/WikiEditorHooks.save.php At line 75 add:

// Give other extensions a chance to disable WikiEditor for this page.
if ( !Hooks::run( 'WikiEditorDisable', [ $editPage ] ) ) {
    return true;
 }

Transfer files from another wiki

Dump and retrieve Wikipages. This will not include files


Get files

List of extensions enabled with config parameters

 to do
Cookies help us deliver our services. By using our services, you agree to our use of cookies.