„Mediawiki 1.31 LTS telepítése Debian-Apache-MySQL környezetben” változatai közötti eltérés
a (Moszat átnevezte a(z) Mediawiki telepítése Debian 9-Apache-MySQL környezetben lapot Mediawiki 1.31 LTS telepítése Debian-Apache-MySQL környezetben lapra átirányítás nélkül) |
A lap 2020. október 26., 12:10-kori változata
Összefoglalás
A leírás a Mediawiki 1.31 LTS kiadásának telepítését mutatja be. A leírásban szereplő url-ek alverziónként változnak, ezeket módosítani kell.
A leírás Debian 9.11 operációs rendszeren készült. Az Apache http szerver és a Php futtatókörnyezet az operációs rendszer tárolójából telepítettük.
A parancsok root jogot feltételeznek. (állandó root jog: sudo -i)
Előfeltételek
Webszerver, adatbáziszerver és Php futtatókörnyezet telepítése
apt -y install apache2 mysql-server php php-mysql php-mbstring php-xml php-pecl-http php-apcu php-intl
Adatbázis létrehozása
Feltételezve, hogy a mysql root felhasználónak konzolból nincs jelszava (telepítés alapértelmezett)
SQL futtatása:
- my_wiki: adatbázis neve
- wikiuser: adatbázis felhasználó neve
- password: adatbázis felhasználó jelszava
mysql -uroot -e "CREATE DATABASE my_wiki CHARACTER SET utf8;
CREATE USER 'wikiuser'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON my_wiki.* TO 'wikiuser'@'%';"
Webszerver konfigurálása
A pédában Apache-Debian alapértelmezések lesznek használatban: A /var/www/ könyvtár és a www-data user lesz használva.
Az alábbi beállításokkal létre kell hozni az /etc/apache2/sites-available/mediawiki.conf Apache konfigurációt.
- ServerName: domain név, ami alatt a wiki elérhető lesz. (A domaint konfigurálni kell a kiszolgáló IP címéhez)
- ServerAlias: további domain nevek.
- ServerAdmin: webmester e-mail címe.
- DocumentRoot: A könyvtár, ahová a mediawiki motor telepítve lesz.
- VirtualHost: a *:443 a https, a *:80 a http konfiguráció, ha csak az egyik kell, a másik elhagyható
- https konfiguráció
- SSLCertificateFile: tanúsítvány fájl
- SSLCertificateKeyFile: privát kulcs file
- Include (opcionális): tanúsítvány lánc fájl
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName mydomain.com
ServerAlias www.mydomain.com
ServerAdmin webmaster@mydomain.com
DocumentRoot /var/www/mediawiki
<Directory "/var/www/mediawiki/images">
AllowOverride None
AddType text/plain .html .htm .shtml .phtml
php_admin_flag engine off
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
#Include /etc/ssl/certs/ssl-chain.conf
</VirtualHost>
</IfModule>
<VirtualHost *:80>
ServerName mydomain.com
ServerAlias www.mydomain.com
ServerAdmin webmaster@mydomain.com
DocumentRoot /var/www/mediawiki
<Directory "/var/www/mediawiki/images">
AllowOverride None
AddType text/plain .html .htm .shtml .phtml
php_admin_flag engine off
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Apache konfiguráció érvényesítése:
ln -s /etc/apache2/sites-available/mediawiki.conf /etc/apache2/sites-enabled/mediawiki.conf
service apache2 restart
Mediawiki motor telepítése
wget -qO- https://releases.wikimedia.org/mediawiki/1.31/mediawiki-1.31.X.tar.gz | tar -xzf - -C /var/www/
mv /var/www/mediawiki-1.31.X /var/www/mediawiki
chown -R www-data:www-data /var/www/mediawiki/
A mediawiki telepítése böngészőben, a beállított domain használatával folytatható. pl: https://mydomain.com
Wiki nyelvének kiválasztása
Környezet ellenőrzése
Adatbázis adatok megadása
Wiki név és admin user megadása
Wiki részletesebb konfigurálása
Telepítés indítása
Konfigurációs fájl mentése
A letöltött LocalSettings.php fájlt a /var/www/mediawiki/ könyvtárba kell másolni.
Hasznos beállítások
Natív html engedélyezése
A szerkesztőnek engedélyezni lehet, hogy html tartalmat illesszen az oldalba.
A /var/www/mediawiki/LocalSettings.php konfigurációs fájlba illesszük be a következőt:
$wgRawHtml = true;
A bekapcsoláskor a <html>...</html> tagek közé helyezett html kódot nem értelmezi, változatlanul hagyja.
Feltölthető képméret növelése
A /var/www/mediawiki/LocalSettings.php konfigurációs fájlba illesszük be a következő konfigurációs elemet. Lehetséges értékek és információ A php fájlfeltöltés méretét is növelni kell a php.ini, ha az kisebb a beállított értéknél.
$wgMaxImageArea =
Kód kiemelés (code syntax highlighting) beállítása
A telepített verzióban installálva van a SyntaxHighlight bővítmény, de kell még pár beállítás, hogy működjön.
Pygments Python modul futtathatóságának beállítása:
chmod a+x /var/www/mediawiki-1.31.5/extensions/SyntaxHighlight_GeSHi/pygments/pygmentize
A /var/www/mediawiki/LocalSettings.php konfigurációs fájlba illesszük be a következő konfigurációs elemet.
$wgSyntaxHighlightModels[CONTENT_MODEL_SCRIBUNTO] = 'lua';
E-mail beállítások
A /var/www/mediawiki/LocalSettings.php konfigurációs fájlba illesszük be az alábbi konfigurációs elemeket. További információ
$wgEnableEmail = true; // E-mail küldés engedélyezése
$wgSMTP = [
'host' => "mail.example.com", // SMTP server domain vagy IP cím
'IDHost' => "example.com", // SMTP helo név, tipikusan a wiki domain név
'port' => 25, // SMTP server port
'auth' => true, // SMTP authentikáció engedélyezése (true vagy false)
'username' => "my_user_name", // SMTP user név
'password' => "my_password" // SMTP jelszó
];
$wgPasswordSender = "noreply@mydomain.com"; // általános e-mail feladó
$wgEmergencyContact = "noreply@mydomain.com"; // rendszer riasztások e-mail feladó
$wgEmailAuthentication = true; // e-mail megerősítése szükséges, hogy a rendszer e-mail küldjön a regisztrált címre
$wgEmailConfirmToEdit = true; // e-mail megerősítése szükséges a wiki szerkesztéséhez
VisualEditor telepítése
A wikinek egy speciális nyelve van (WikiText), amelyet el kell sajátítani, hogy a wiki oldalait szerkeszthessük. A VisualEditor plugin lehetővé teszi, hogy a wiki oldalakat bárki szövegszerkesztő szerűen szerkessze. A plugin működéséhez szükséges a Parsoid szolgáltatás, ami WikiText és a html konverziót végzi. A Parsoid működéséhez szükséges a NodeJS.
Szükséges csomagok telepítése:
apt-get install -y curl php-curl apt-transport-https dirmngr
NodeJS telepítése
curl -sL https://deb.nodesource.com/setup_6.x | bash -
apt-get install -y nodejs
Parsoid telepítése
apt-key advanced --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys AF380A3036A03444
echo "deb https://releases.wikimedia.org/debian jessie-mediawiki main" | tee /etc/apt/sources.list.d/parsoid.list
apt-get update
apt-get install -y parsoid
Wiki api ellenőrzése
curl https://mydomain.com/api.php
Ha beolvassa a html oldalt, akkor működik.
! https esetén érvényes tanúsítvány kell!
Pasoid konfiguráció:
A konfigurációban mydomain.com -ot kell kicserélni a wiki domainjére. Több domain esetén az - uri: konfigurációs részletet kell többszörözni.
mcedit /etc/mediawiki/parsoid/config.yaml
#----
conf:
- uri: 'https://mydomain.com/api.php'
domain: 'mydomain.com'
#----
Konfiguráció érvényesítése
service parsoid restart
VisualEditor bővítmény telepítése
wget -qO- https://extdist.wmflabs.org/dist/extensions/VisualEditor-REL1_31-c3c9140.tar.gz | tar -xzf - -C /var/www/mediawiki-1.31.5/extensions/
VisualEditor konfiguráció:
mcedit /var/www/mediawiki-1.31.5/LocalSettings.php
A konfiguráció végére be kell szúrni a következő konfigurációs részletet, és a mydomain.com -ot kell kicserélni a wiki domainjére.
wfLoadExtension( 'VisualEditor' );
// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;
// Optional: Set VisualEditor as the default for anonymous users
// otherwise they will have to switch to VE
// $wgDefaultUserOptions['visualeditor-editor'] = "visualeditor";
// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';
// OPTIONAL: Enable VisualEditor's experimental code features
#$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;
$wgVirtualRestConfig['modules']['parsoid'] = array(
// URL to the Parsoid instance
// Use port 8142 if you use the Debian package
'url' => 'http://localhost:8142',
//// Parsoid "domain", see below (optional)
'domain' => 'mydomain.com',
// Parsoid "prefix", see below (optional)
//'prefix' => 'mydomain.com'
);
$wgVisualEditorAvailableNamespaces = [
"File" => false
];
// This feature requires a non-locking session store. The default session store will not work and
// will cause deadlocks (connection timeouts from Parsoid) when trying to use this feature. Only required for MediaWiki 1.26.x and earlier!
$wgSessionsInObjectCache = true;
// Forward users' Cookie: headers to Parsoid. Required for private wikis (login required to read).
// If the wiki is not private (i.e. $wgGroupPermissions['*']['read'] is true) this configuration
// variable will be ignored.
//
// WARNING: ONLY enable this on private wikis and ONLY IF you understand the SECURITY IMPLICATIONS
// of sending Cookie headers to Parsoid over HTTP. For security reasons, it is strongly recommended
// that $wgVirtualRestConfig['modules']['parsoid']['url'] be pointed to localhost if this setting is enabled.
$wgVirtualRestConfig['modules']['parsoid']['forwardCookies'] = true;