Difference between revisions of "MediaWiki Debian Installation"
Line 35: | Line 35: | ||
$wgArticlePath = '/wiki/$1'; |
$wgArticlePath = '/wiki/$1'; |
||
− | </syntaxhighlight>Longer story: to get this right one has to know how apache2 loads its modules, if there is cumulation or overwriting |
+ | </syntaxhighlight>Longer story: to get this right one has to know or actually guess how apache2 loads its modules, if there is cumulation or overwriting and how Debian handles this. As I played too long with the configuration files, I can't tell anymore what the original state was. I suppose that /etc/mediawiki/mediawiki.conf was a link to /etc/apache2/conf-enabled/mediawiki.conf and that the above aliases should have been added there. |
Revision as of 06:27, 15 February 2020
My Experience Installing MediaWiki 1.31 on Debian Bullseye (Buster)
This page will be under construction for some while (started 2020-2-14).
These are no complete installation instructions, but a description of some of the challenges and the possible solutions to set up mediawiki with the following goals:
- As secure as possible, inclusive forward security,
- Short URLs and VisualEditor + Math extension.
The server is separate, i.e. not on my home workstation, and plugged to the router. It's a fanless small machine, consuming between 5 and 15 Watts according to the product description. (Not being paid for advertising, I can recommend it at any time: fitlet2. See also the description at Phoronix.)
I am neither following a logical nor chronological path, but rather choose the various issues from the end with the solutions found. As I have full access to all parts of my network, ssh access is possible. To easily download extensions to the target server from the mediawiki site, I access the target server with
homeuser@homemachine:~$ ssh -Y serveruser@targetserver
and then start firefox on the targetserver
serveruser@targetserver:~$ firefox&
Firewall
Between my homemachine or an outside visitor and the targetserver is the firewall, built into my router. So I have to allow port sharing of my target server. Debian's default for ssh is port 22. (For further serving http, https and parsoid and mathoid extensions I also allowed ports 80, 443, 8143 and 10043 each for IPv4 and IPv6 to be shared.)
Debian on targetserver
fitlet2 comes with LinuxMint preinstalled, but I prefer Debian. The choice of a desktop environment and an Internet server on the targetserver allow remote browsing via ssh. Debian recommends
sudo tasksel
and then select Debian desktop environment (plus the choice of desktop) and web server. This installs apache2 and whatever else it needs as the default Web Server.
sudo apt update
sudo apt full-upgrade
sudo apt install mediawiki
installs, as I recall, all that is needed to run mediawiki on localhost.
Short URLs
Short story: place two aliases into the apache2 conf-file that defines the mediawiki host and define the $wgArticlePath:
/etc/apache2/conf-enabled/mediawiki.conf:
Alias /mediawiki /var/lib/mediawiki
Alias /wiki /var/lib/mediawiki/index.php
/etc/mediawiki/Localhost.php:
$wgArticlePath = '/wiki/$1';
Longer story: to get this right one has to know or actually guess how apache2 loads its modules, if there is cumulation or overwriting and how Debian handles this. As I played too long with the configuration files, I can't tell anymore what the original state was. I suppose that /etc/mediawiki/mediawiki.conf was a link to /etc/apache2/conf-enabled/mediawiki.conf and that the above aliases should have been added there.