Bearbeiten von „Server/MediaWiki

Zur Navigation springen Zur Suche springen
Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden. Ein eigenes Benutzerkonto hat eine ganze Reihe von Vorteilen.

Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.

Aktuelle Version Dein Text
Zeile 2: Zeile 2:
Dieser Artikel ist ein exemplarischer Artikel.
Dieser Artikel ist ein exemplarischer Artikel.


Es handelt sich hierbei nicht um die Instanz [[MediaWiki]] als Wiki vom StuRa.
Es handelt sich hierbei nicht um die Instanz [[MediWiki]] als Wiki vom StuRa.
Dazu dienen die Artikel:
Dazu dienen die Artikel:
* [[Wiki]];
* [[Wiki]];
* [[Server/srs13]].
* [[Server/Jails/SRS13]].
}}
}}


Zeile 17: Zeile 17:
=== tatsächliche Installation ===
=== tatsächliche Installation ===


Initialisieren von pkgng
: <code>pkg</code>
: <code>pkg</code>


Installieren von MediWiki
* Leider muss eine bestimmte Version zur Installation angegeben werden.
** Welche Versionen zur Installation zur Verfügung stehen, kann durch eine Suche nach verfügbaren Paketen zu ''mediawiki'' herausgefunden werden.
**: <code>pkg search mediawiki</code>
: <code>pkg install mediawiki124</code>
<!--
<pre>
Message for mediawiki124-1.24.0:
**** NOTE ****
Remember to check
%25%25MEDIAWIKIDIR%25%25/INSTALL
and
%25%25MEDIAWIKIDIR%25%25/UPGRADE
for details
</pre>
-->
Installation eines Datenbankservers
* MediaWiki unterstützt eine Vielzahl von Datenbanken (z.&nbsp;B. SQLite, PostgreSQL oder MariaDB). MySQL ist die übliche Vorauswahl, so auch bei [[FreeBSD]].
: <code>pkg install mysql55-server</code>
: <code>pkg install mysql55-server</code>
<!--
<!--
Zeile 55: Zeile 31:
</pre>
</pre>
-->
-->
Starten von MySQL als Server für die Datenbank
: <code>/usr/local/etc/rc.d/mysql-server onestart</code>
Obligatorisches Aktualisieren von MySQL zum Prüfen der Funktionsfähigkeit durch sich selbst
: <code>/usr/local/bin/mysql_upgrade</code>
: <code>/usr/local/bin/mysql_upgrade</code>
Eintragung in die Datei zur Konfiguration der Umgebung des System, dass MySQL nach einem mögliche Neustart laufen soll
: <code>echo 'mysql_enable="yes"' >> /etc/rc.conf</code>
: <code>echo 'mysql_enable="yes"' >> /etc/rc.conf</code>


Installation eines Webservers
* MediaWiki kann durch eine Vielzahl von Web-Diensten (z.&nbsp;B. nginx) ausgeliefert. Apache ist die übliche Vorauswahl, so auch bei [[FreeBSD]].
: <code>pkg install apache24</code>
: <code>pkg install apache24</code>
<!--
<!--
Zeile 76: Zeile 46:
</pre>
</pre>
-->
-->
Eintragung in die Datei zur Konfiguration der Umgebung des System, dass Apache (2.4) nach einem mögliche Neustart laufen soll
: <code>echo 'apache24_enable="yes"' >> /etc/rc.conf</code>
: <code>echo 'apache24_enable="yes"' >> /etc/rc.conf</code>


Installieren des Moduls zur Verwendung von PHP für Web-Dienste
: <code>pkg install mod_php5</code>
: <code>pkg install mod_php56</code>
<!--
<!--
<pre>
<pre>
Zeile 107: Zeile 75:
</pre>
</pre>
-->
-->
: Eintragung des gewünschten Umgangs von Anwendungen mit Dateien der Endung ''php''
: <code>echo '<FilesMatch "\.php$">' >> /usr/local/etc/apache24/httpd.conf</code>
:: <code>echo '<FilesMatch "\.php$">' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo 'SetHandler application/x-httpd-php' >> /usr/local/etc/apache24/httpd.conf</code>
:: <code>echo 'SetHandler application/x-httpd-php' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo '</FilesMatch>' >> /usr/local/etc/apache24/httpd.conf</code>
:: <code>echo '</FilesMatch>' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo '<FilesMatch "\.phps$">' >> /usr/local/etc/apache24/httpd.conf</code>
:: <code>echo '<FilesMatch "\.phps$">' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo 'SetHandler application/x-httpd-php-source' >> /usr/local/etc/apache24/httpd.conf</code>
:: <code>echo 'SetHandler application/x-httpd-php-source' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo '</FilesMatch>' >> /usr/local/etc/apache24/httpd.conf</code>
:: <code>echo '</FilesMatch>' >> /usr/local/etc/apache24/httpd.conf</code>
: oder
:: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</pre>


Erzeugen eines Accounts für die Datenbank MySQL und das Setzen des dazugehörigen Passwortes
: <code>pkg install mediawiki123</code>
: <code>/usr/local/bin/mysqladmin --user=name-of-the-user-in-mysql password "password-of-the-user-in-mysql"</code>
<!--
<!--
: <code>mysqladmin -u root password password</code>
-->
Anpassen der Datei für die Konfiguration vom Webserver Apache (2.4)
* Abschaltung des allgemeinen globalen Verbietes des Zugriffs
*: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>
<pre>
#<Directory />                                                             
**** NOTE ****
# AllowOverride none                                                     
Remember to check
# Require all denied
#</Directory>
</pre>
* Ändern des zentralen Verzeichnisses wo sich die Daten befinden, die als Webdienst ausgeliefert werden sollen
*: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>
#DocumentRoot "/usr/local/www/apache24/data"
DocumentRoot "/usr/local/www/mediawiki"
</pre>
* Ergänzen des Einbeziehens vom Verzeichnis wo MediaWiki beheimatet ist
*:: <code>echo '<Directory "/usr/local/www/mediawiki">' >> /usr/local/etc/apache24/httpd.conf</code>
*:: <code>echo 'Options Indexes FollowSymLinks' >> /usr/local/etc/apache24/httpd.conf</code>
*:: <code>echo 'DirectoryIndex index.php index.html' >> /usr/local/etc/apache24/httpd.conf</code>
*:: <code>echo 'AllowOverride None' >> /usr/local/etc/apache24/httpd.conf</code>
*:: <code>echo 'Order allow,deny' >> /usr/local/etc/apache24/httpd.conf</code>
*:: <code>echo 'Allow from all' >> /usr/local/etc/apache24/httpd.conf</code>
*:: <code>echo '</Directory>' >> /usr/local/etc/apache24/httpd.conf</code>
*: oder
*:: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>
<Directory "/usr/local/www/mediawiki">
Options Indexes FollowSymLinks
DirectoryIndex index.php index.html
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</pre>


Starten des Webservers Apache
%25%25MEDIAWIKIDIR%25%25/INSTALL
: <code>/usr/local/sbin/apachectl restart</code>


Prüfen des erfolgreichen Auslieferns des Web-Dienstes
and
: http://localhost


* Beginn der restlichen Installation über das web user interface
%25%25MEDIAWIKIDIR%25%25/UPGRADE


Bei einer Prüfung der Funktionalitäten bei der restlichen Installation über das web user interface weist MediaWiki auf Dienste hin, die es gern nutzen möchte, jedoch bisher nicht installiert sind.
for details
: Installieren der Versionsverwaltung git
:: <code>pkg install git</code>
: Installieren von einer Ergänzung zu Sprachen für PHP
:: <code>pkg install pecl-intl</code>
: Installieren von einer Ergänzung zur Verarbeitung von Bildern für PHP
:: <code>pkg install pecl-imagick</code>
: Installieren von einer Ergänzung zum Nutzen eines Cache für PHP
:: <code>pkg install pecl-APC</code>
 
Auch wird geprüft, wie der Web-Dienst ausgeliefert wird.
: Anpassung der administrativen Mail-Adresse für den Webserver Apache (2.4)
:: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>
#ServerAdmin you@example.com
ServerAdmin mediawiki@stura.htw-dresden.de
</pre>
: Eintragung des Namens des Servers, der die Domain, im Zweifelsfall (etwa mangels DNS) eine IP-Adresse, ist und den Port für den Webserver Apache (2.4) angibt
:: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>                                                                         
ServerName 141.56.50.13:80                                                 
</pre>
 
Der Sicherheit wegen, sollten Inhalte das Uploadverzeichnisses (normalerweise Bilder etc.) nicht ausführbar sein
: Dies kann per Apache-Konfig oder .htaccess-Datei im entspr. Verzeichnis erreicht werden. Hier ein Beispiel für die Apache-Konfig:
 
:: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>                                                                         
<Directory "/Library/MediaWiki/web/images">
  # Ignore .htaccess files
  AllowOverride None
 
  # Serve HTML as plaintext, don't execute SHTML
  AddType text/plain .html .htm .shtml .php .phtml .php5
 
  # Don't run arbitrary PHP code.
  php_admin_flag engine off
 
  # If you've other scripting languages, disable them too.
</Directory>
</pre>
 
erneutes Starten des Webservers Apache
: <code>/usr/local/sbin/apachectl restart</code>
 
Durchführung der restlichen Installation über das web user interface
<!--
http://localhost/mw-config/index.php?page=DBConnect
: Datenbankserver:
:: ''localhost''
: Bitte Daten zur eindeutigen Identifikation dieses Wikis angeben
:: Datenbankname:
::* Der ''Datenbankname'' kann selbst bestimmt werden bestimmt.
::: mediawiki
: Benutzerkonto für die Installation
:: Name des Datenbankbenutzers:
::: von mysqladmin
::: ''name-of-the-user-in-mysql''
:: Passwort des Datenbankbenutzers:
::: password-of-the-user-in-mysql
http://localhost/mw-config/index.php?page=DBSettings
: Dasselbe Datenbankkonto wie während des Installationsvorgangs verwenden
:: abgewählt
: Datenbankkonto für den Webzugriff
:: Name des Datenbankbenutzers:
::: ''name-of-the-user-for-mediawiki-in-mysql''
:: Passwort des Datenbankbenutzers:
::: ''password-of-the-user-for-mediawiki-in-mysql''
: Benutzerkonto für die Installation
:: angewählt
<pre>
Fatal error: Call to undefined function hash() in /usr/local/www/mediawiki/includes/password/Pbkdf2Password.php on line 59
</pre>
</pre>
-->
-->


Eintragen der nach dem Abschluss der restlichen Installation über das web user interface erstellten Datei LocalSettings.php
vielleicht auch (notwendig?)
: <code>$EDITOR /usr/local/www/mediawiki/LocalSettings.php</code>
: <code>pkg install php5-xmlreader</code>
: <code>pkg install php5-tidy</code>


: Datenbankeinrichtung (MySQL)
Erzeugen eines Accounts für MySQL und das Setzen des dazugehörigen Passwortes
:: Aus Sicherheitsgründen scheint es mir sinnvoll, als Datenbanknutzer nicht root sondern einen extra User zu verwenden.
: <code>mysqladmin --user=name-of-the-user-in-mysql password "password-of-the-user-in-mysql"</code>
 
::Folgendes legt einen User samt gleichnamiger Datenbank ''mediawiki'' an und gewährt ihm sämtliche Rechte (auf diese eine Datenbank). Die Sternchen ("*") sind durch das Passwort zu ersetzten. In neueren Wikiversionen ist dies bereits im Assistenten berücksichtigt.
<pre>
mysql -u root -p
 
CREATE USER 'mediawiki'@'localhost' IDENTIFIED BY '***';
GRANT USAGE ON * . * TO 'mediawiki'@'localhost' IDENTIFIED BY '***' ;
CREATE DATABASE IF NOT EXISTS `mediawiki` ;
GRANT ALL PRIVILEGES ON `mediawiki` . * TO 'mediawiki'@'localhost';
</pre>
 
==== tatsächliche Installation Siehe auch ====
* [[mediawikiwiki:manual:Running MediaWiki on FreeBSD#FreeBSD&nbsp;10.1]]<sup>[https://www.mediawiki.org/w/index.php?title=Manual_talk:Running_MediaWiki_on_FreeBSD&oldid=1317311#FreeBSD_10.1]</sup>
 
=== ergänzende Installation ===
 
==== VisualEditor installieren ====
 
Installieren von npm (Paketverwaltung von node.js)
: <code>pkg install npm</code>
<!--
<!--
<pre>
: <code>mysqladmin -u root password "password"</code>
Message for python27-2.7.8_6:
=====================================================================
 
Note that some standard Python modules are provided as separate ports
as they require additional dependencies. They are available as:
 
bsddb          databases/py-bsddb
gdbm            databases/py-gdbm
sqlite3        databases/py-sqlite3
tkinter        x11-toolkits/py-tkinter
 
=====================================================================
Message for node-0.10.33:
Note: If you need npm (Node Package Manager), please install www/npm.
</pre>
-->
-->


: <code>pkg install git</code>
Anpassen der Datei für die Konfiguration von Apache
<!--
: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
<pre>
<pre>
Message for python27-2.7.8_6:
#DocumentRoot "/usr/local/www/apache24/data"
=====================================================================
DocumentRoot "/usr/local/www/mediawiki"
 
Note that some standard Python modules are provided as separate ports
as they require additional dependencies. They are available as:
 
bsddb          databases/py-bsddb
gdbm            databases/py-gdbm
sqlite3        databases/py-sqlite3
tkinter        x11-toolkits/py-tkinter
 
=====================================================================
Message for git-2.1.2_1:
------------------------------------------------------------------------
*************************** GITWEB *************************************
If you installed the GITWEB option please follow these instructions:
 
In the directory /usr/local/share/examples/git/gitweb you can find all files to
make gitweb work as a public repository on the web.
 
All you have to do to make gitweb work is:
1) Copy the files /usr/local/share/examples/git/gitweb/* to a directory on
  your web server (e.g. Apache2) in which you are able to execute
  CGI-scripts.
2) In gitweb.cgi, adjust the variable $projectroot to point to
  your git repository (that is where you have your *.git project
  directories).
*************************** GITWEB *************************************
 
*************************** CONTRIB ************************************
If you installed the CONTRIB option please note that the scripts are
installed in /usr/local/share/git-core/contrib. Some of them require
other ports to be installed (perl, python, etc), which you may need to
install manually.
*************************** CONTRIB ************************************
------------------------------------------------------------------------
</pre>
</pre>
-->


Wechseln in ein beliebiges Verzeichnis, wo dann Parsoid installiert werden soll
: <code>echo '<Directory "/usr/local/www/mediawiki">' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>cd /usr/local/www</code>
: <code>echo 'Options Indexes FollowSymLinks' >> /usr/local/etc/apache24/httpd.conf</code>
Klonen (via git) von Parsoid in das aktuelle Verzeichnis
: <code>echo 'DirectoryIndex index.php index.html' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>git clone https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid</code>
: <code>echo 'AllowOverride None' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo 'Order allow,deny' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo 'Allow from all' >> /usr/local/etc/apache24/httpd.conf</code>
: <code>echo '</Directory>' >> /usr/local/etc/apache24/httpd.conf</code>


Wechseln in das eben erstellte Verzeichnis, wo Parsoid installiert werden soll
: <code>$EDITOR /usr/local/etc/apache24/httpd.conf</code>
: <code>cd parsoid</code>
mit npm verwaltetes Installieren von Parsoid
: <code>npm install</code>
 
Erzeugen einer vorgefertigten Datei zur Konfiguration von Parsoid
: <code>cp api/localsettings.js.example api/localsettings.js</code>
Anpassen der Datei zur Konfiguration von Parsoid
: <code>$EDITOR api/localsettings.js</code>
<pre>
<pre>
/*                                                                           
#<Directory />                                                             
        parsoidConfig.setInterwiki( 'localhost', 'http://localhost/w/api.php' );
#    AllowOverride none                                                     
*/                                                                           
#    Require all denied
        parsoidConfig.setInterwiki( 'localhost', 'http://141.56.50.13/api.php' );
#</Directory>
</pre>
</pre>


Testweises Starten von Parsoid
: <code>apachectl restart</code>
: <code>node api/server.js</code>
:: http://localhost:8000
:: http://localhost:8000/localhost/Hauptseite


Ergänzen der Einträge für Parsoid in die Datei zu Konfiguration von MediaWiki
==== tatsächliche Installation Siehe auch ====
: <code>$EDITOR /usr/local/www/mediawiki/LocalSettings.php</code>
* [[mediawikiwiki:manual:Running MediaWiki on FreeBSD#FreeBSD&nbsp;10.1]]<sup>[https://www.mediawiki.org/w/index.php?title=Manual_talk:Running_MediaWiki_on_FreeBSD&oldid=1317311#FreeBSD_10.1]</sup>
<pre>
// URL to the Parsoid instance
// MUST NOT end in a slash due to Parsoid bug
$wgVisualEditorParsoidURL = 'http://141.56.50.13:8000';
 
// Interwiki prefix to pass to the Parsoid instance
// Parsoid will be called as $url/$prefix/$pagename
$wgVisualEditorParsoidPrefix = 'localhost';
</pre>
 
Heraussuchen der zur Version von MediaWiki passenden Version
: https://www.mediawiki.org/wiki/Special:ExtensionDistributor/VisualEditor
Herunterladen des Paketes
: <code>cd /tmp && curl -Ok# https://extdist.wmflabs.org/dist/extensions/VisualEditor-REL1_24-af11aa1.tar.gz</code>
Entpacken des Paketes an die passende Stelle, im Unterverzeichnis ''extensions'', wo MediaWiki beheimatet ist
: <code>cd /tmp && tar -xzf VisualEditor-REL1_24-af11aa1.tar.gz -C /usr/local/www/mediawiki/extensions</code>
 
mit npm verwaltetes Installieren von VisualEditor in dem Verzeichnis der Extention
: <code>cd /usr/local/www/mediawiki/extensions/VisualEditor && npm install</code>
 
Ergänzen der Einträge für Parsoid in die Datei zu Konfiguration von MediaWiki
: <code>$EDITOR /usr/local/www/mediawiki/LocalSettings.php</code>
<pre>
require_once "$IP/extensions/VisualEditor/VisualEditor.php";
 
// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;
 
// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';
 
// OPTIONAL: Enable VisualEditor's experimental code features
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;
</pre>
 
Wechseln in das Verzeichnis von Parsoid und dortiges Starten des Dienstes, der dann dort im Hintergrund laufen soll
: <code>cd /usr/local/www/parsoid && node api/server.js &</code>
 
: <code>$EDITOR /etc/rc.conf.local</code>
<pre>
#!/bin/sh
cd /usr/local/www/parsoid
su -m www -c 'node api/server.js'
</pre>
: chmod 755 /etc/rc.conf.local
 
==== Semantic MediaWiki installieren ====
 
* [https://www.semantic-mediawiki.org/wiki/Help:Installation SMW installieren]
** [https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx Installation *nix Composer]
 
== Siehe auch ==
* [[mediawikiwiki:Manual:Running MediaWiki on FreeBSD]]
* [[Server/srs13]]


[[Kategorie:Server]]
[[Kategorie:Server]]
[[Kategorie:Software]]
[[Kategorie:Wiki]]
[[Kategorie:Wiki]]

Bitte beachte, dass alle Beiträge zu Wiki StuRa HTW Dresden von anderen Mitwirkenden bearbeitet, geändert oder gelöscht werden können. Reiche hier keine Texte ein, falls du nicht willst, dass diese ohne Einschränkung geändert werden können.

Du bestätigst hiermit auch, dass du diese Texte selbst geschrieben hast oder diese von einer gemeinfreien Quelle kopiert hast (weitere Einzelheiten unter StuRa HTW Dresden:Urheberrechte). ÜBERTRAGE OHNE GENEHMIGUNG KEINE URHEBERRECHTLICH GESCHÜTZTEN INHALTE!

Bitte beantworte die folgende Frage, um diese Seite speichern zu können (weitere Informationen):

Abbrechen Bearbeitungshilfe (wird in einem neuen Fenster geöffnet)

Die folgende Vorlage wird auf dieser Seite verwendet: