Server Installation/MediaWiki: Unterschied zwischen den Versionen
Lars (Diskussion | Beiträge) (Testsystem: Email-Versand abschalten) |
|||
Zeile 129: | Zeile 129: | ||
* Anlegen der Apache Konfiguration, Einlesen der MySQL Datenbank | * Anlegen der Apache Konfiguration, Einlesen der MySQL Datenbank | ||
* Workaround für MediaWiki und libpcre: http://stackoverflow.com/a/38457054 | * Workaround für MediaWiki und libpcre: http://stackoverflow.com/a/38457054 | ||
+ | * Email-Versand in <tt>LocalSettings.php</tt> abschalten (Benachrichtigungen wären verwirrend): <pre>$wgEnableEmail = false;</pre> | ||
[[Kategorie:Server]] | [[Kategorie:Server]] |
Version vom 9. Oktober 2016, 22:06 Uhr
Aktueller Status siehe Special:Version.
Inhaltsverzeichnis |
Grundinstallation
TODO
# allow only registered users to edit pages $wgGroupPermissions['*']['edit'] = false; # allow new users to create an account $wgGroupPermissions['*']['createaccount'] = true; # require confirmation of new accounts via email $wgEmailConfirmToEdit = true; # Erlauben von Dateiendungen $wgFileExtensions[] = "pdf"; $wgFileExtensions[] = "txt"; $wgFileExtensions[] = "zip"; $wgFileExtensions[] = "tar"; $wgFileExtensions[] = "gz"; $wgFileExtensions[] = "dia"; $wgFileExtensions[] = "odt"; $wgFileExtensions[] = "sh"; $wgFileExtensions[] = "dia";
Updates
Vorab: Backup der Installation und der DB prüfen!
MediaWiki in Read-Only Modus versetzen - LocalSettings.php:
$wgReadOnly = 'Das Opennet Wiki wird auf eine neue Softwareversion aktualisiert. \ Derzeit daher keine Bearbeitung möglich.';
Aktuelle Version herunterladen und bereit stellen in /var/www/:
wget <download-url> cp -ar mediawiki-<old-version> mediawiki-<new-version> tar xfzv mediawiki-<new-version>.tar.gz -C mediawiki-<new-version>/ --strip-components=1
- MediaWiki DB clonen und vorbereiten:
mysqldump wiki_<old-version> > /tmp/wiki_<old-version>.dmp mysqladmin create wiki_<new-version> mysql grant index, create, select, insert, update, delete, alter, lock tables on wiki_<new-version>.* to wiki_user; flush privileges; \q mysql wiki_<new-version> < /tmp/wiki_<old-version>.dmp
Neue Version in Apache aktivieren und MediaWiki DB Update durchfuehren:
- wiki.inc in /etc/apache/sites-available anpassen
- Upgrade in /var/www/mediawiki-<new-version> ausführen: php update.php
- Extensions und Skins schreittweise aktualisieren, siehe LocalSettings.php
Dateirechte korregieren - /var/www/mediawiki-<version>/
chown -R root:root * chown -R root:root .* chown -R www-data images/
Bei Fehlern inbesondere das PHP Logfile unter /var/log/php.log konsultieren. Weiterhin liefert MediaWiki in jede Seite Debug Informationen als HTML Kommentar falls $wgDebugComments = true; in LocalSettings.php aktiviert.
Apache Konfiguration
Einbindung unter /wiki:
alias /w /var/www/mediawiki-<version> alias /wiki /var/www/mediawiki-<version>/index.php RewriteEngine on RewriteRule ap_button_([0-9\.]+).png http://www.opennet-initiative.de/button/?ap=$1 RewriteRule ^/index.php/(.*) http://wiki.opennet-initiative.de/wiki/$1
Besonderheit für /wiki/Opennet_Blog:
RewriteRule ^/wiki/Opennet_Blog http://wiki.opennet-initiative.de/wiki/Spezial:OnBlog/ [P] ProxyPassReverse /wiki/Opennet_Blog http://wiki.opennet-initiative.de/wiki/Spezial:OnBlog/
PHP Konfiguration
Erhöhung des Session Timeouts auf 48 h in /etc/php5/apache2/php.ini
session.gc_maxlifetime = 172800
Sessions werden unter /var/lib/php5/ gespeichert.
Extensions
Bei Opennet verwendete MediaWiki Extensions.
Standarderweiterungen
- ParserFunctions - Funktionen für Vorlagen
- UsabilityInitiative - verbesserte Editoren/Menus
- Vector - verbessertes Design
- ConfirmEdit - Anti-Spam Captcha
- WPtouch - Skin für mobile Endgeräte
- Simple mobile skin auto change - automatischer Skin Wechsel zu WPtouch bei mobilen Endgeräten
- InstantCommons - Bildeinbindung aus Wikipedia Commons
- Loops - Schleifen ausführen, benötigt für APData
- ContactForm - öffentliches Kontaktformular (Special:Contact; Template: MediaWiki:Contactpage, MediaWiki:Contactpage-defsubject, MediaWiki:Contactpage-pagetext; Versand via Benutzer:OpennetContactForm; Captcha via ConfirmEdit Extension)
- ImageMap - Erzeugen von Grafiken
- GraphViz - spezielle Beschreibungssprache für Graphen, setzt ImageMap Extension (MediaWiki) sowie "graphviz" und "graphviz-dev" (Debian) voraus
Eigenentwicklungen/Anpassungen
- APData - AP-Statusdaten/OLSR-Nameservice
- OnBlog - Opennet Blog Extension auf Wikibasis
- OnBlogOverview - Liste der letzten Blogeinträge
- OnBlogSpecialAll - Blogausgabe alle Beiträge (Spezial:OnBlog/)
- OnBlogSpecialUser - Blogausgabe Beiträge eines Benutzers ([[Spezial:OnBlogUser/Benutzer:<Username>]])
- BlogFeed - Blogausgabe als RSS Feed (Spezial:BlogFeed)
- OnMisc - Sammlung verschiedener Opennet Extensions
- OnApPos
- OnApStatus
- OnLastSeen
- OnRandomImage - Zufallsbild aus der Gallery
- OnRemoteAddrExtension
- OniFrame -- Openstreetmap-Karte (slippymap) einbinden
- Beispiel: <OniFrame src="https://www.opennet-initiative.de/map/?lat=54.09130&lon=12.12308&zoom=16&layers=B00TTTT" height="300px" width="40%" style="padding:0px;" scrolling="no" marginheight="0" marginwidth="0" frameborder="0"></OniFrame>
Namespaces
- 100 = EN
- 101 = ES
- 102 = FR
Verwendet für Internationalisierung mit der Vorlage:Languages sowie Vorlage:Countryflag.
Testsystem
Auf Server/yurika gibt es Stand 2016 ein MediaWiki Testsystem. Anlage mittels:
- Datensyncronisation vom Produktiv- zum Testsystem:
rsync -axH --copy-unsafe-links --exclude=/LocalSettings.php /var/www/mediawiki-1.20.6/ matthias@yurika.opennet-initiative.de:mediawiki-clone/ mysqldump --add-drop-table wiki_1206 | gzip | pv | ssh matthias@yurika.opennet-initiative.de "cat >wiki_$(date +%Y%m%d).sql.gz"
- Anlegen der Apache Konfiguration, Einlesen der MySQL Datenbank
- Workaround für MediaWiki und libpcre: http://stackoverflow.com/a/38457054
- Email-Versand in LocalSettings.php abschalten (Benachrichtigungen wären verwirrend):
$wgEnableEmail = false;