📚 Kompletny przewodnik instalacji MediaWiki na Ubuntu 24.04

Chcesz stworzyć własną wiki dla swojej firmy, organizacji lub społeczności? MediaWiki to potężne i elastyczne oprogramowanie, które napędza Wikipedię i tysiące innych projektów wiki na całym świecie. W tym szczegółowym przewodniku przeprowadzimy Cię krok po kroku przez instalację i konfigurację MediaWiki na najnowszej wersji Ubuntu 24.04, abyś mógł uruchomić profesjonalny system zarządzania wiedzą.

⚡ Ekspresowe Podsumowanie:

  1. Przygotowanie serwera: Instalacja LAMP (Linux, Apache, MySQL, PHP) na Ubuntu 24.04.
  2. Instalacja MediaWiki: Pobieranie, konfiguracja bazy danych i uruchomienie instalatora.
  3. Konfiguracja zaawansowana: Ustawienia bezpieczeństwa, rozszerzenia i optymalizacja wydajności.
  4. Utrzymanie: Regularne aktualizacje, tworzenie kopii zapasowych i monitorowanie wydajności.

🗺️ Spis Treści - Twoja Mapa Drogowa


🖥️ Przygotowanie środowiska serwera

Zanim zainstalujemy MediaWiki, musimy przygotować odpowiednie środowisko na serwerze Ubuntu 24.04. MediaWiki wymaga serwera WWW (najczęściej Apache), bazy danych (MySQL/MariaDB) oraz PHP z niezbędnymi rozszerzeniami.

Aktualizacja systemu

Zawsze zaczynamy od aktualizacji systemu:

sudo apt update
sudo apt upgrade -y

Instalacja stosu LAMP

1. Apache

Zainstalujmy serwer WWW Apache:

sudo apt install apache2 -y

Po instalacji, upewnijmy się, że Apache jest uruchomiony:

sudo systemctl status apache2

Jeśli serwer nie jest uruchomiony, możemy go włączyć komendą:

sudo systemctl start apache2
sudo systemctl enable apache2

2. MySQL/MariaDB

MediaWiki wymaga bazy danych. Zainstalujmy MySQL (w Ubuntu 24.04 jest to faktycznie MariaDB):

sudo apt install mysql-server -y

Zabezpieczmy instalację MySQL:

sudo mysql_secure_installation

Podczas procesu zabezpieczania, odpowiedz na pytania:

  • Ustaw silne hasło dla użytkownika root
  • Usuń anonimowych użytkowników
  • Wyłącz zdalny dostęp dla roota
  • Usuń testową bazę danych
  • Przeładuj tabele uprawnień

3. PHP i niezbędne rozszerzenia

MediaWiki wymaga PHP i kilku specyficznych rozszerzeń:

sudo apt install php php-mysql php-xml php-mbstring php-curl php-intl php-gd php-cli php-apcu php-json libapache2-mod-php -y

Sprawdźmy zainstalowaną wersję PHP:

php -v

Uwaga: MediaWiki 1.38 i nowsze wymagają PHP 7.4.3 lub nowszego. Ubuntu 24.04 domyślnie zawiera PHP 8.3, co jest w pełni kompatybilne.

Konfiguracja PHP

Dostosujmy konfigurację PHP dla optymalnej pracy z MediaWiki. Otwórz plik konfiguracyjny:

sudo nano /etc/php/8.3/apache2/php.ini

Zaktualizuj następujące wartości:

memory_limit = 256M
upload_max_filesize = 100M
post_max_size = 100M
max_execution_time = 300

Po dokonaniu zmian, zrestartuj Apache:

sudo systemctl restart apache2

✨ Pro Tip: Jeśli planujesz hostować dużą wiki z wieloma multimediami, rozważ zwiększenie limitów pamięci i rozmiaru przesyłanych plików jeszcze bardziej.

📦 Utworzenie bazy danych i użytkownika MySQL

Zanim pobierzemy MediaWiki, przygotujmy bazę danych:

sudo mysql -u root -p

Po wprowadzeniu hasła, wykonaj następujące polecenia SQL:

CREATE DATABASE mediawiki CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'mediawikiuser'@'localhost' IDENTIFIED BY 'silne_haslo';
GRANT ALL PRIVILEGES ON mediawiki.* TO 'mediawikiuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Pamiętaj, aby zastąpić 'silne_haslo' własnym, bezpiecznym hasłem.

🚀 Pobieranie i instalacja MediaWiki

Teraz możemy przejść do instalacji samej MediaWiki.

Pobieranie MediaWiki

Przejdźmy do katalogu tymczasowego i pobierzmy najnowszą wersję MediaWiki:

cd /tmp
wget https://releases.wikimedia.org/mediawiki/1.40/mediawiki-1.40.0.tar.gz

Uwaga: Wersja może się różnić, zawsze sprawdź oficjalną stronę MediaWiki w celu pobrania najnowszej stabilnej wersji.

Rozpakowanie i przeniesienie plików

Rozpakujmy pobrane archiwum:

tar -xvzf mediawiki-*.tar.gz

Przenieśmy rozpakowane pliki do katalogu serwera WWW:

sudo mv mediawiki-* /var/www/html/mediawiki

Ustawienie uprawnień

Ustaw odpowiednie uprawnienia do plików MediaWiki:

sudo chown -R www-data:www-data /var/www/html/mediawiki
sudo chmod -R 755 /var/www/html/mediawiki

🔧 Konfiguracja serwera WWW

Konfiguracja Apache

Utwórzmy plik konfiguracyjny wirtualnego hosta dla MediaWiki:

sudo nano /etc/apache2/sites-available/mediawiki.conf

Dodaj następującą konfigurację:

<VirtualHost *:80>
    ServerName wiki.twojastrona.pl
    ServerAdmin admin@twojastrona.pl
    DocumentRoot /var/www/html/mediawiki

    <Directory /var/www/html/mediawiki>
        Options FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/mediawiki_error.log
    CustomLog ${APACHE_LOG_DIR}/mediawiki_access.log combined
</VirtualHost>

Zastąp wiki.twojastrona.pl i admin@twojastrona.pl własną domeną i adresem e-mail.

Włączenie wirtualnego hosta i modułów Apache

sudo a2ensite mediawiki.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

⚠️ Ostrzeżenie: Jeśli używasz tej instalacji w środowisku produkcyjnym, zdecydowanie zalecamy skonfigurowanie SSL za pomocą Let's Encrypt.

Konfiguracja SSL (opcjonalnie, ale zalecane)

Dla produkcyjnych instalacji zalecamy skonfigurowanie SSL za pomocą Let's Encrypt:

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d wiki.twojastrona.pl

Postępuj zgodnie z instrukcjami Certbot, aby uzyskać i skonfigurować certyfikat SSL.

💽 Uruchomienie instalatora MediaWiki

Teraz możemy uruchomić instalator MediaWiki poprzez przeglądarkę internetową.

  1. Otwórz przeglądarkę i przejdź do http://wiki.twojastrona.pl (lub https://wiki.twojastrona.pl jeśli skonfigurowałeś SSL)
  2. Kliknij link, aby rozpocząć instalację

Kroki instalatora

Postępuj zgodnie z instrukcjami instalatora, podając następujące informacje:

  1. Język instalacji i wiki - wybierz polski (lub inny preferowany język)
  2. Sprawdzenie środowiska - instalator sprawdzi czy wszystkie wymagania są spełnione
  3. Konfiguracja bazy danych:
    • Typ bazy danych: MySQL/MariaDB
    • Nazwa bazy: mediawiki
    • Użytkownik bazy: mediawikiuser
    • Hasło: [twoje hasło utworzone wcześniej]
    • Prefiks tabel: mw_ (opcjonalnie, ale zalecane)
  4. Nazwa wiki - np. "Baza Wiedzy [Twojej Firmy]"
  5. Dane administratora - utwórz konto administratora
  6. Ustawienia skórek i uprawnień - dostosuj według potrzeb
  7. Zakończenie instalacji - pobierz plik LocalSettings.php

Po zakończeniu instalacji pobierz plik LocalSettings.php i prześlij go do katalogu głównego MediaWiki:

sudo mv ~/Downloads/LocalSettings.php /var/www/html/mediawiki/
sudo chown www-data:www-data /var/www/html/mediawiki/LocalSettings.php
sudo chmod 600 /var/www/html/mediawiki/LocalSettings.php

Uwaga: Ścieżka do pobranego pliku może być inna, w zależności od Twojej przeglądarki i systemu.

🛠️ Zaawansowana konfiguracja MediaWiki

Po podstawowej instalacji warto dostosować MediaWiki do swoich potrzeb.

Dostosowanie pliku LocalSettings.php

Otwórz plik konfiguracyjny do edycji:

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

Rozważ dodanie/modyfikację następujących ustawień:

Optymalizacja wydajności

# Włącz cache
$wgMainCacheType = CACHE_ACCEL;
$wgMemCachedServers = [];

# Kompresja treści
$wgCompressRevisions = true;

# Pamięć podręczna parsera
$wgParserCacheType = CACHE_ACCEL;
$wgParserCacheExpireTime = 86400; // 24 godziny

Ustawienia bezpieczeństwa

# Wymaganie potwierdzenia adresu e-mail
$wgEmailAuthentication = true;

# Ograniczenie tworzenia kont
$wgGroupPermissions['*']['createaccount'] = false; // Tylko administratorzy mogą tworzyć konta

# Ochrona przed spamem
$wgSpamRegex = '/spamregex/i';

Dostosowanie wyglądu

# Logo
$wgLogo = "$wgScriptPath/resources/assets/twoja-firma-logo.png";

# Favicon
$wgFavicon = "$wgScriptPath/favicon.ico";

# Domyślna skórka
$wgDefaultSkin = "vector-2022"; // Nowoczesna skórka podobna do Wikipedii

✨ Pro Tip: Zawsze twórz kopię zapasową pliku LocalSettings.php przed dokonywaniem zmian: sudo cp /var/www/html/mediawiki/LocalSettings.php /var/www/html/mediawiki/LocalSettings.php.bak

Instalacja rozszerzeń

MediaWiki posiada bogaty ekosystem rozszerzeń, które mogą znacznie rozszerzyć funkcjonalność Twojej wiki. Oto instalacja kilku popularnych rozszerzeń:

VisualEditor (edytor WYSIWYG)

cd /var/www/html/mediawiki/extensions
sudo git clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/VisualEditor.git
cd VisualEditor
sudo git submodule update --init

Dodaj następujące linie do pliku LocalSettings.php:

# VisualEditor
wfLoadExtension( 'VisualEditor' );
$wgDefaultUserOptions['visualeditor-enable'] = 1;
$wgHiddenPrefs[] = 'visualeditor-enable';
$wgVisualEditorAvailableNamespaces = [
    NS_MAIN => true,
    NS_USER => true,
    NS_PROJECT => true,
    NS_HELP => true,
    "_" => true
];

MobileFrontend i Responsive Skin

cd /var/www/html/mediawiki/extensions
sudo git clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/MobileFrontend.git
sudo git clone https://gerrit.wikimedia.org/r/p/mediawiki/skins/MinervaNeue.git ../../skins/MinervaNeue

Dodaj do LocalSettings.php:

# Mobile
wfLoadExtension( 'MobileFrontend' );
wfLoadSkin( 'MinervaNeue' );
$wgMFAutodetectMobileView = true;
$wgMobileUrlTemplate = '%h0.m.%h1.%h2';
$wgMFDefaultSkinClass = 'SkinMinerva';

Konfiguracja cron dla zadań konserwacyjnych

MediaWiki wymaga regularnego uruchamiania pewnych zadań konserwacyjnych. Utwórz plik cron:

sudo crontab -e

Dodaj następujące wpisy:

# MediaWiki maintenance tasks
0 2 * * * php /var/www/html/mediawiki/maintenance/runJobs.php --quiet
0 3 * * * php /var/www/html/mediawiki/maintenance/update.php --quick --quiet
0 4 * * 0 php /var/www/html/mediawiki/maintenance/rebuildall.php --quiet

📋 Konfiguracja zapory sieciowej

Jeśli używasz zapory, upewnij się, że porty HTTP (80) i HTTPS (443) są otwarte:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Jeśli zapora nie jest jeszcze włączona:

sudo ufw enable

🔄 Tworzenie kopii zapasowych

Regularne kopie zapasowe są niezbędne. Utwórzmy skrypt do ich wykonywania:

sudo nano /usr/local/bin/backup-mediawiki.sh

Dodaj następującą zawartość:

#!/bin/bash
# MediaWiki backup script

# Set variables
BACKUP_DIR="/var/backups/mediawiki"
WIKI_DIR="/var/www/html/mediawiki"
DB_USER="mediawikiuser"
DB_PASS="twoje_haslo_bazy_danych"
DB_NAME="mediawiki"
DATE=$(date +"%Y%m%d")

# Create backup directory if it doesn't exist
mkdir -p $BACKUP_DIR

# Backup database
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME | gzip > $BACKUP_DIR/mediawiki_db_$DATE.sql.gz

# Backup files
tar -czf $BACKUP_DIR/mediawiki_files_$DATE.tar.gz $WIKI_DIR

# Backup LocalSettings.php separately (critical file)
cp $WIKI_DIR/LocalSettings.php $BACKUP_DIR/LocalSettings_$DATE.php

# Delete backups older than 30 days
find $BACKUP_DIR -name "mediawiki_*" -type f -mtime +30 -delete
find $BACKUP_DIR -name "LocalSettings_*" -type f -mtime +30 -delete

echo "MediaWiki backup completed on $(date)"

Nadaj uprawnienia wykonywania:

sudo chmod +x /usr/local/bin/backup-mediawiki.sh

Dodaj zadanie do crona, aby wykonywać kopie zapasowe codziennie:

sudo crontab -e

Dodaj linię:

0 1 * * * /usr/local/bin/backup-mediawiki.sh

⚠️ Ostrzeżenie: Dla produkcyjnych instalacji rozważ przechowywanie kopii zapasowych w zdalnej lokalizacji, takiej jak Amazon S3, Backblaze B2 lub inny serwer.

🔍 Rozwiązywanie problemów

Poniżej znajdują się typowe problemy, które mogą wystąpić podczas instalacji MediaWiki, wraz z ich rozwiązaniami.

Problem z uprawnieniami do plików

Jeśli napotkasz błędy związane z uprawnieniami do plików, spróbuj:

sudo chown -R www-data:www-data /var/www/html/mediawiki
sudo find /var/www/html/mediawiki -type d -exec chmod 755 {} \;
sudo find /var/www/html/mediawiki -type f -exec chmod 644 {} \;

Brakujące rozszerzenia PHP

Jeśli instalator wskazuje na brak wymaganych rozszerzeń PHP:

sudo apt install php-intl php-gd php-xml php-mbstring -y
sudo systemctl restart apache2

Problemy z bazą danych

Jeśli występują problemy z połączeniem z bazą danych:

sudo mysql -u root -p
GRANT ALL PRIVILEGES ON mediawiki.* TO 'mediawikiuser'@'localhost' IDENTIFIED BY 'twoje_haslo';
FLUSH PRIVILEGES;
EXIT;

Sprawdzanie logów

W przypadku problemów, warto sprawdzić logi:

# Logi Apache
sudo tail -f /var/log/apache2/error.log

# Logi PHP
sudo tail -f /var/log/php8.3-fpm.log

# Logi MediaWiki (jeśli skonfigurowane)
sudo tail -f /var/www/html/mediawiki/logs/debug.log

📈 Monitorowanie i optymalizacja

Po uruchomieniu MediaWiki warto monitorować jej wydajność i w razie potrzeby przeprowadzić optymalizację.

Instalacja narzędzia monitorującego

sudo apt install htop iotop nethogs -y

Optymalizacja MySQL/MariaDB

Edytuj plik konfiguracyjny MySQL:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Dodaj/zmodyfikuj następujące parametry:

[mysqld]
# Optymalizacja dla MediaWiki
innodb_buffer_pool_size = 256M  # Dostosuj do pamięci serwera (ok. 50% RAM)
innodb_file_per_table = 1
query_cache_size = 32M
query_cache_limit = 1M
query_cache_type = 1

Zrestartuj MySQL:

sudo systemctl restart mysql

Optymalizacja PHP-FPM (opcjonalnie)

Jeśli zdecydujesz się przejść z mod_php na PHP-FPM dla lepszej wydajności:

sudo apt install php-fpm libapache2-mod-fcgid -y
sudo a2dismod php8.3
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.3-fpm
sudo systemctl restart apache2

✅ Twoja Checklista Utrzymania MediaWiki:

  • 🔄 Regularne aktualizacje - sprawdzaj nowe wersje MediaWiki co kwartał
  • 💾 Kopie zapasowe - weryfikuj, że automatyczne kopie zapasowe działają poprawnie
  • 🔍 Monitorowanie - okresowo sprawdzaj logi pod kątem błędów
  • 🧹 Konserwacja bazy danych - regularnie optymalizuj bazę danych
  • 🛡️ Bezpieczeństwo - aktualizuj system operacyjny i wszystkie komponenty
  • 📊 Wydajność - monitoruj czas ładowania strony i zasoby serwera

❓ FAQ - Odpowiedzi na Twoje Pytania

Czy mogę używać Nginx zamiast Apache z MediaWiki?
Tak, MediaWiki działa dobrze z Nginx. Wymagana jest nieco inna konfiguracja, ale może zapewnić lepszą wydajność przy dużym obciążeniu.

Jak zaktualizować MediaWiki do nowszej wersji?
Przede wszystkim wykonaj kopię zapasową. Następnie pobierz nową wersję, zastąp pliki zachowując plik LocalSettings.php i uruchom skrypt update.php z katalogu maintenance.

Czy MediaWiki obsługuje HTTPS?
Tak, MediaWiki w pełni obsługuje HTTPS. W rzeczywistości zalecamy korzystanie z HTTPS dla wszystkich instalacji produkcyjnych.

Jak zmienić logo MediaWiki?
Prześlij swoje logo do katalogu resources/assets/ i zmodyfikuj zmienną $wgLogo w pliku LocalSettings.php.

Jak kontrolować, kto może edytować strony w mojej wiki?
MediaWiki oferuje rozbudowany system uprawnień. Możesz zmodyfikować zmienne $wgGroupPermissions w LocalSettings.php, aby określić, które grupy użytkowników mogą wykonywać różne działania.

🏁 Podsumowanie - Gotowy na Sukces?

Gratulacje! Pomyślnie zainstalowałeś i skonfigurowałeś MediaWiki na Ubuntu 24.04. Twój system jest teraz gotowy do tworzenia i zarządzania treścią wiki. MediaWiki to potężne narzędzie, które może służyć jako baza wiedzy, platforma współpracy lub publiczna strona informacyjna.

Pamiętaj o:

  • Regularnych aktualizacjach dla zabezpieczenia i nowych funkcji
  • Tworzeniu kopii zapasowych danych
  • Dostosowaniu konfiguracji do rosnących potrzeb
  • Instalacji przydatnych rozszerzeń w miarę rozwoju wiki

Dobrze skonfigurowana MediaWiki może stać się centralnym repozytorium wiedzy dla Twojej organizacji, projektu czy społeczności.

🚀 Czas na Działanie

Sprawdź nasze usługi hostingowe idealne dla MediaWiki

Potrzebujesz wsparcia przy bardziej złożonej instalacji MediaWiki lub migracji istniejącej wiki? Nasi eksperci są gotowi pomóc - skontaktuj się z nami już dziś!

Czy ten artykuł był pomocny?

Wróć do listy wpisów

Twoja strona WordPress działa wolno?

Sprawdź nasz hosting WordPress z ultraszybkimi dyskami NVMe i konfiguracją serwera zoptymalizowaną pod kątem wydajności. Doświadcz różnicy już dziś!

Sprawdź ofertę hostingu
30-dniowa gwarancja zwrotu pieniędzy