Setting Up Mediawiki
You'll need a domain! and a server! Rather than hosting yourself, renting hosting is recommended because they're much less likely to accidentally start using the server computer for casual data analysis and end up overwriting all the system libraries trying to install python or something.
Hosting services that provide some administration frontend like cPanel are also recommended, as they implement most of the major things you'd want from a server (backups, etc.) and make it so non-programmers can administer the server in case the One Person who knows how to do so leaves the lab
There are a few options for installing mediawiki
- Automated -- if you are using a host with cPanel, use the software installation tool (something like "installatron" or "softaculous" or whatever your version uses), point it at a domain (or subdomain) and let it do the work
- Containerized -- Follow the instructions to use the MediaWiki-Docker images
- Manual -- Follow the manual installation guide (requirements, full guide
If all goes well your wiki should be active! Mediawiki consists of some static php files that are the programmatic implementation of the wiki in whatever directory your server is serving the page from (eg. apache servers will have some /var/www/http/wiki folder), as well as a SQL database for storing page content.
When in doubt, consult the Common errors and symptoms page
The base mediawiki installation is pretty barebones, so install some basic extensions to ~ expand our user experience ~
The documentation for how to install each can be found at its wiki page!
- ConfirmAccount - allow people to request accounts, confirmed by an administrator
- SemanticMediawiki - the magic that makes the wiki computable, does templates, etc.
- Tweeki!!! to make it look nice
You should never have to pay for an https cert! Here's how to do it for free with acme
- Get shell/ssh access to your server -- this will vary depending on your host.
- Download and install acme
curl https://get.acme.sh | sh
- Issue a cert! (depending on whether acme was able to make an alias for itself, you might need to directly refer to the .sh file like
./acme.sh). Note that we need to issue a certificate for the www. subdomain as well even though it's just a vestigial thing on the olde web
acme.sh --issue -d example.com -d www.example.com -w /path/to/wiki/directory
- You may need to apply this fix afterwards