Zum Inhalt

Index

Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).

Postgres Datenbank erstellen

sudo -u postgres -i
createdb -E UTF8 -O thorsten mediawiki
psql -d mediawiki -c "GRANT ALL PRIVILEGES ON DATABASE mediawiki TO thorsten

exit

PHP installieren

sudo apt install php-fpm php-pgsql php-xml php-curl php-gd php-mbstring php-xmlrpc php-xmlrpc php-zip php-intl -y

Mediawiki installieren auf Entwicklungs Rechner

cd /var/www
sudo git clone https://gerrit.wikimedia.org/r/mediawiki/core.git mediawiki
sudo cd mediawiki
sudo git tag -l | sort -V
sudo git checkout 1.41.0
sudo git submodule update --init --recursive
sudo chown -R www-data:www-data /var/www/mediawiki
sudo chmod -R 755 /var/www/mediawiki
Hochladen der Konfiguration
sudo scp /home/thorsten/Downloads/LocalSettings.php thorsten@wissen-ahrensburg.de:/var/www/mediawiki/LocalSettings.php

Lesbare URLs konfiguriern in mediawiki

sudo nano /var/www/mediawiki/LocalSettings.php

$wgScriptPath = "";
$wgArticlePath = "/$1";
$wgUsePathInfo = true;
Erweiterung Registieren
sudo nano /var/www/mediawiki/LocalSettings.php

$wgScriptPath = "";
$wgArticlePath = "/$1";
$wgUsePathInfo = true;

wfLoadExtension( 'VisualEditor' );
# Cookie-Warnung aktivieren
wfLoadExtension( 'CookieWarning' );
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
$wgCookieWarningEnabled=true;
$wgCookieWarningMoreUrl='';
$wgCookieWarningGeoIPServiceURL='';
$wgCookieWarningGeoIPLookup='none';
$wgCookieWarningForCountryCodes="EU";





php maintenance/rebuildLocalisationCache.php
php maintenance/update.php 

Auf den Server übertragen

# Oder nur bestimmte Dateien/Verzeichnisse synchronisieren
rsync -avz --delete \
  --exclude='LocalSettings.php' \
  --exclude='.git' \
  --exclude='cache/*' \
  --exclude='images/temp/*' \
  --exclude='images/thumb/*' \
  /var/www/mediawiki/ user@server:/var/www/mediawiki/

Nginx-Konfiguration mit SSL

sudo nano /etc/nginx/conf.d/mediawiki.conf
server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name mediawiki.wissen-ahrensburg.de;
    ssl_certificate /etc/letsencrypt/live/wissen-ahrensburg.de/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/wissen-ahrensburg.de/privkey.pem;

    root /var/www/mediawiki;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

server {
    listen 80;
    listen [::]:80;
    server_name mediawiki.wissen-ahrensburg.de;
    return 301 https://$host$request_uri;
}

Das Zertifikat wird vorher per Certbot ausgestellt (siehe Nginx & SSL); der php8.3-fpm.sock-Pfad muss zur installierten PHP-Version passen (php -v).

sudo nginx -t
sudo systemctl reload nginx

Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).