Podręcznik:Częste błędy i symptomy

This page is a translated version of the page Manual:Common errors and symptoms and the translation is 86% complete.
Zobacz też: Manual:How to debug

Widzisz pustą stronę

Pusta strona oznacza, że wystąpił błąd PHP, który nie jest wyświetlany na ekranie. Aby to wymusić, dodaj następujące linijki do pliku LocalSettings.php, po <?php:

error_reporting( E_ALL );
ini_set( 'display_errors', 1 );

Możesz ustawić wartość dla error_log w PHP.ini i przeczytać dziennik błędów PHP by się dowiedzieć, co się dzieje. W niektórych przypadkach błędy PHP mogą być zapisane w dzienniku błędów serwera Web.

W raportach błędów może być:

  • "Uwaga [...] Nie jest bezpieczne, by polegać na ustawieniach strefy czasowej systemu. *Musisz* użyć ustawienia date.timezone lub funkcji date_default_timezone_set()." Sprawdź, czy date.timezone = jest ustawiony poprawnie w php.ini.
  • Niektóre pliki mogą być zgłoszone jako brakujące (np. jeśli folder media w /includes nie istnieje, możesz otrzymać wiadomość, że wymagany proces obrazowania "nie mógł otworzyć strumienia"). Sprawdź oryginalny pakiet instalacyjny MediaWiki (upewnij się, że skonsultowałeś o poprawną wersję), aby zobaczyć, czy o to chodzi. Jeśli tak, skopiuj brakujące pliki z pakietu do folderu MediaWiki. Prawdopodobnie trzeba odświeżyć pamięć cache i potem zrestartować serwer Web.
  • Nie można znaleźć gniazda MySQL. Jeśli LocalSettings.php jest ustawione na poprawne gniazdo MySQL ale nie php.ini, to może skutkować pustym ekranem bez wyjścia z błędem z serwera Web czy PHP. Można to naprawić, aktualizując wpis mysql.default_socket w pliku php.ini.

Dużo użytkowników zgłasza puste strony w nowszych wersjach po przesłaniu artykułów do nowej wiki. Prawdopodobnie powodem jest limit pamięci w instalacjach PHP (zwykle 8 MB). Proszę sprawdzić dzienniki błędów PHP i/lub Apache. Aby zmodyfikować to ustawienie, zmień /etc/php.ini i zwiększ memory_limit. Na przykład, by zwiększyć je do 32 MB, zastąp istniejący tekst memory_limit = 32M. Upewnij się, że serwer Web został zrestartowany po zmianie tej wartości.

Limit pamięci mógł być ustawiony w pliku LocalSettings.php. Znajdź linijkę zawierającą ustawienie memory_limit i zwiększ do potrzebnej wartości. 20M może nie starczyć, jeśli aktywna wersja to 1.15.1. Zmień ją na np. "memory_limit = 32M". Ta zmiana nie wymaga restartu Apache.

Jeśli ładowanie strony się zatrzyma po jakimś czasie (jak 30 sekund) podczas jakiejś akcji, i jeśli strona jest pusta lub jest błąd HTTP 500, problemem jest limit czasu w połączeniu z serwerem. Może być to serwer bazy danych, czy jeśli to się zdarza podczas określonej akcji, serwer poczty (jeśli są skonfigurowane ustawienia e-mail). Jeśli to serwer e-mail, sprawdź, czy możesz połączyć się z nim z serwera MediaWiki, np. uruchamiając klienta Telnet do serwera i portu skonfigurowanego na $wgSMTP i obserwując, czy może się połączyć.

Jeśli możesz zobaczyć treść strony chwilowo, i nagle cała strona staje się pusta, problem najpewniej jest spowodowany obecnością instrukcji JavaScript document.write, document.writeln lub document.open w skryptach wiki. Możesz sprawdzić czy w tym tkwi problem, jeśli otworzysz konsolę przeglądarki (wciśnij F12) i odświeżysz stronę. Jeśli karta sieci pokazuje status HTTP 200, a transfer ma co najmniej kilka kilobajtów, być może to jest powód problemu. To są przestarzałe metody interfejsu Document, które powodują, że strona staje się pusta, jeśli użyte poza HTML strony, i mogą być obecne na stronach JavaScript wiki. Odradza się ich użycia, co jest wskazywane przez samą specyfikację HTMLa. Możesz wyłączyć JavaScript w przeglądarce, albo ustawić $wgUseSiteJs i $wgAllowUserJs na false, by wyłączyć te skrypty, aż naprawisz zepsute skrypty.

Błędy MediaWiki

Wszystkie strony nie mają treści, ale podczas edytowania strony jest wikikod

Opcjonalnie z tymi komunikatami o błędzie:

PHP Warning: preg_replace(): Compilation failed: group name must start with a
  non-digit at offset 4 in /var/www/wiki/htdocs/includes/MagicWord.php

To jest spowodowane zmianą w PCRE 8.34, przez którą nazwy grup otaczających nie mogą się zaczynać od cyfry. Potrzebna jest aktualizacja MediaWiki do wspieranej wersji. Zobacz Updating to PCRE 8.33 or Higher . Ten problem jest rozwiązany we wszystkich obecnie wspieranych wersjach MediaWiki (zobacz zadanie T60640).

Zobacz raport: Topic:Rz2zo0m88rrxqrfn, Thread:Project:Support desk/MediaWiki don't work with PCRE 8.34 (2)

Miniatury zdjęć nie działają i/lub się nie pojawiają

Ta sekcja wymienia problemy i rozwiązania związane z tym, że miniatury się nie wyświetlają lub nie renderują.

Błąd podczas tworzenia miniatury: Brakuje pliku:

Może to być z powodu niewłaściwych wartości zmiennych globalnych jak wyjaśniono w:

Błąd języka separatora dziesiętnego w srcset

Jeśli miniatury się nie pojawiają, a nie ma błędu na tych stronach, zobacz kod źródłowy HTML na stronie i znajdź srcset. Jeśli znajdziesz coś jak <img ... srcset="/images/thumb/File.png/600px-File.png 1,5x, /images/thumb/File.png/800px-File.png 2x">, gdzie jest 1,5x zamiast 1.5x, problem jest spowodowany przez zadanie T181987, i powinieneś dodać to do LocalSettings.php:

setlocale(LC_NUMERIC, "C");

Upewnij się, że $wgShellLocale nie jest zdefiniowane w LocalSettings.php, albo dodaj to:

$wgShellLocale = "C.UTF-8";

SVG

Najpierw ustaw $wgSVGConverter . Domyślnie program do konwersji jest ustawiony na ImageMagick.

Użycie ImageMagick

Potrzebny jest ImageMagick 6.x.x lub nowszy. Sprawdź, czy zmienna $wgImageMagickConvertCommand jest prawidłowa. Zwykłe ustawienia to:

$wgImageMagickConvertCommand = "/usr/bin/convert";
$wgImageMagickConvertCommand = "/usr/local/bin/convert";

Jeśli to nie działa, spróbuj $wgSVGConverterPath .

$wgSVGConverterPath = "/usr/bin";
$wgSVGConverterPath = "/usr/local/bin";

Hosty wspólne mogą mieć różne wersje ImageMagick, by zaspokoić potrzeby różnych użytkowników. Używaj wersji 6.x.x.

  • Aby ustalić wersję ImageMagick, poszukaj w plikach pomocy Twojego hostingu lub użyj /usr/bin/convert --version lub /usr/local/bin/convert --version, aby wykryć.
  • Na hostach współdzielonych GoDaddy "/usr/bin/convert" dla wersji 5.5.6 i "/usr/local/bin/convert" dla wersji 6.2.8.

Jeśli wygenerowanie miniatur przez ImageMagick się nie powiedzie z komunikatem o błędzie w dzienniku serwera Web, takim jak "Memory allocation failed" czy "/bin/ulimit4.sh: Segmentation fault /usr/bin/convert ...", to wartość $wgMaxShellMemory powinna być zwiększona.

Jeśli w ścieżce brakuje znaków spoza ASCII

  • Sprawdź czy UTF-8 jest dostępne na Twoim serwerze, uruchamiając locale -a
  • Jeśli to niedostępne, uruchom locale-gen en_US.utf8 lub umieść języki z UTF-8 dla Twojego kraju i zmień wartość $wgShellLocale według tego.

Jeśli się używa IIS czy FastCGI w Windowsie, używane konto gościa też musi mieć uprawnienia do wykonywania C:\Windows\System32\cmd.exe, w przeciwnym razie wystąpi błąd "Nie można stworzyć forka".

Używanie Batik

MediaWiki ustala limity czasu i pamięci dla komend powłoki w Linuksie. Jeśli otrzymujesz błąd "Wystąpił błąd podczas inicjalizacji maszyny wirtualnej, Nie można zarezerwować wystarczającego miejsca dla kopca obiektowego, Nie można utworzyć maszyny wirtualnej Java", spróbuj zwiększyć wartość $wgMaxShellMemory .

Używanie rsvg

Na niektórych instalacjach Linuksa czy BSD rsvg ma zmienioną nazwę:

Zamiast ustawiać (domyślnie)

$wgSVGConverters = array( 'rsvg' => '$path/rsvg -w$width -h$height $input $output' );

chcesz ustawić to na

$wgSVGConverters = array( 'rsvg' => '$path/rsvg-convert -w $width -h $height -o $output $input' );

JPEG

Symptom: Ten komunikat o błędzie w szarym obszarze:

Error creating thumbnail: Invalid thumbnail parameters

Jeden z powodów: liczba pikseli w oryginalnym obrazie przekracza $wgMaxImageArea . Domyślna wartość 1.25e7 jest zbyt mała dla wielu nowoczesnych aparatów. To źle, że diagnostyka za bardzo nie wskazuje na problem.

Możesz zwiększyć wartość $wgMaxImageArea lub przełączyć na użycie ImageMagick, który unika tego ograniczenia (ustaw $wgUseImageMagick i $wgImageMagickConvertCommand ).

Przetwarzanie dużych obrazów może zajmować dużo czasu. Może być dobrą polityką, by ustalić maksymalny rozmiar obrazu.

JPEG (używanie GD)

Symptom: Ten komunikat o błędzie w szarym obszarze:

Error creating thumbnail: Incomplete GD library configuration: missing function imagecreatefromjpeg

Niektóre wersje PHP 4.x i 5.x mają buga, gdzie libjpeg jest wykryte, ale nie włączone podczas kroku ./configure; to przeważnie się zdarza na systemach Red Hat/RHEL/CentOS. Jeśli nie chcesz korzystać z ImageMagick, sposobem naprawy jest rekompilacja PHP. Najpierw dowiedz się (z phpinfo()) jakie były istniejące przełączniki ./configure, i dodaj --with-jpeg-dir przed --with-gd.

make clean
./configure --with-various-switches --with-jpeg-dir --with-gd --with-more-switches
make
make test
# switch to root
make install

Potem zrestartuj serwer Web (dla Apache na Red Hat: service apache stop, potem service apache start). Żeby to sprawdzić, po prostu wyświetl stronę File:... ponownie (bez potrzeby ponownego przesyłania pliku). By uzyskać więcej informacji, zobacz komentarze na PHP: imagecreatefromjpeg (streszczenie funkcji)

Nie można zapisać miniatury do celu

Jeśli otrzymujesz błąd "Błąd podczas generowania miniatury / Błąd podczas tworzenia miniatury: Nie można zapisać miniatury do celu" i folder $wgUploadDirectory ma poprawne uprawnienia na wszystkich poziomach, sprawdź, czy $wgTmpDirectory istnieje. (W przeciwieństwie do niektórych zmiennych używających ścieżek, takich jak $wgCacheDirectory , $wgTmpDirectory nie jest tworzone podczas wykonywania.) Otrzymasz bardziej szczegółową wiadomość, jeśli włączysz dziennik za pomocą $wgDebugLogFile .

Ten błąd może się też zdarzyć, jeśli tryb "tylko do odczytu" ($wgReadOnly ) został ustawiony w LocalSettings.php. Możesz spróbować usunąć $wgReadOnly, aby zobaczyć, czy to naprawi problem.

Błąd podczas tworzenia miniatury: Kod błędu: 25

Jeśli otrzymujesz "Błąd podczas tworzenia miniatury: Kod błędu: 25" z ImageMagick, spróbuj zwiększyć $wgMaxShellFileSize .

Ręczne dodawanie miniatur

W przypadkach, w których nie można dynamicznie stworzyć miniatur na życzenie (np. dla bardzo dużych zdjęć, "Błąd podczas tworzenia miniatury: nie można zwiększyć pamięci cache", "Błąd podczas tworzenia miniatury: convert: nie zdefiniowano zdjęć", itp.), to można ręcznie dodać miniatury. This involves creating the smaller images in the desired sizes and uploading them to the thumb/ directory in $wgUploadDirectory .

Na przykład plik przesłany do:

images/f/f8/Foo.png

powinien mieć miniatury w:

images/thumb/f/f8/Foo.png/100px-Foo.png
images/thumb/f/f8/Foo.png/600px-Foo.png

Rozmiar piksela jest wymiarem poziomym. Przykładowy skrypt w Bashu do tworzenia miniatur jest dostępny na Phabricator:P7049.

Błąd podczas tworzenia miniatury: Kod błędu: -1 na wspólnym hostingu OVH

Z niezidentyfikowanych powodów tworzenie miniatur na niektórych wspólnych hostingach OVH przestaje działać z tym błędem, nawet jeśli uruchamianie polecenia w powłoce SSH działa.

Rozwiązaniem jest wyłączenie ImageMagick, ustawiając $wgUseImageMagick na false w LocalSettings.php:

$wgUseImageMagick = false;

Uwaga! Serwer nie może przetworzyć tej edycji z powodu utraty danych sesji. Być może doszło do wylogowania. Proszę, spróbuj ponownie. Jeśli to nie pomoże – spróbuj wylogować się i zalogować ponownie.

Limity zawartości

Jeśli twój serwer Apache ma łatkę Hardened PHP, musisz zmienić kilka zmiennych w /etc/php.ini jeśli chcesz mieć dużo treści na stronach wiki. W szczególności rozważ ustawienia varfilter.max_value_length, hphp.post.max_value_length i hphp.request.max_value_length. Ustawienia domyślne mogą ograniczyć rozmiar strony do 10k czy 64k.

Inna możliwość to używanie mod_security przez serwer Apache, który może zakłócać działanie MediaWiki. Potrzebne jest jego wyłączenie, by MediaWiki mogło działać poprawnie.

Nie podałeś prawidłowej nazwy użytkownika / Całkowicie puste edycje i podglądy / Nie można przesłać pliku

To jest spowodowane czymś, co usunęło część lub całość danych POST z przeglądarki do serwera Web.

W co najmniej jednym przypadku to było spowodowane przez post_max_size i upload_max_filesize w php.ini ustawione na zbyt dużą wartość (2048M). Naprawi to ustawienie ich z powrotem na bardziej rozsądne wartości (8M). Widocznie żadne dane POST nie dostały się do MediaWiki.

W innym przypadku mod_auth_sspi zakłócało żądania HTTP POST do MediaWiki. Używanie Firefoksa i wprowadzanie danych logowania działa dobrze, ale przez MSIE to nie zadziała. To jest znany defekt w mod_auth_sspi 1.0.4.

Masz kilka opcji, żeby sprawić, że to zadziała:

  • Wyłącz SSPIOfferSSPI ← to powiadomi użytkowników, którzy muszą wprowadzić dane logowania do domeny, to samo, co tryb BASIC
  • Włącz SSPIPerRequestAuth ← Nie widzę, żeby to była zdrowa konfiguracja, ale zadziałała (oprócz wysokich opóźnień połączenia, z którymi muszę walczyć)
  • Cofnij do wersji 1.0.3, ale to to samo, co #2 powyżej.

Wiki pojawia się bez stylów i nie ma zdjęć

Jeśli wiki wygląda jak należy z tego samego serwera, na którym jest umieszczona, ale pojawia się bez stylów CSS (brak kolorów, teł, zdjęć, minimalnego formatowania, itp.) podczas dostępu z innych urządzeń (lub niektórych), najprawdopodobniej powodem jest to, że serwer ma problemy z ustalaniem adresu IP lub nazwy hosta dostępu, lub jest źle skonfigurowana. To powoduje, że adresy URL do stylów i obrazów są wygenerowane za pomocą adresu loopback 127.0.0.1, localhost, lub nazwy hosta nieznanej poza serwerem. Możesz zobaczyć kod źródłowy dowolnej strony i sprawdzić, jak wyglądają adresy i co się dzieje, jak próbujesz uzyskać do nich dostęp bezpośrednio z przeglądarki.

Rozwiązaniem jest ręczne ustawienie zmiennej $wgServer na nazwę hosta, której wszyscy będą używać do dostępu do wiki.

Jeżeli jest dostęp do wiki z sieci wewnętrznej i zewnętrznej, być może jest potrzeba użycia adresu zewnętrznego dla $wgServer. Nie zapomnij numeru portu jeśli używasz niestandardowego portu, może to być jeśli twój ISP zablokował port 80 (Przykład: $wgServer = "http://example.domain.com:8080";)

Jeśli style się nie stosują nawet jeśli przeglądasz wiki z serwera, z którego jest hostowana, problemem może być błąd PHP w skrypcie load.php ResourceLoader a. Spróbuj wyszukać plik load.php w Twojej instalacji MediaWiki za pomocą przeglądarki i zobaczyć, czy wyświetlają się błędy lub po prostu pusta strona (zobacz #Widzisz pustą stronę). Powinieneś widzieć komentarz podobny do /* Nie zażądano modułów. Maks sprawił, że to tu umieściłem */. Jeśli tak, to może być problem z plikiem .htaccess serwera Web.

Jeśli zamiast tego widzisz błąd 404 Not Found, może być to problem z regułami przepisania URLi serwera Web, jeśli próbowałeś skonfigurować krótkie URLe.

Jeśli otrzymujesz błędy 500 z adresów load.php, sprawdź pliki dzienników błędów serwera Web, aby uzyskać więcej informacji na temat błędów. Wydaje się to być problemem z niektórymi wersjami PHP i Gentoo, które powodują, że Apache narusza ochronę pamięci.[1] To może też się zdarzyć jeśli APC jest włączone, ustawianie apc.serializer=php w php.ini może pomóc.[2]

Od MediaWiki 1.23 możesz zauważyć, że większość stylów dla skórki Wektor, takie jak pasek boczny, zostały umieszczone na końcu strony. Może to być spowodowane niskim pcre.backtrack_limit ustawionym na niektórych dystrybucjach jak FreeBSD. Jest znane, że ma problemy z wartościami równymi 10000. Zwiększ tę wartość do 100000, lub do obecnej wartości domyślnej, 1000000.

Od MediaWiki 1.26 niektóre skórki, szczególnie Wektor, mogą mieć ten problem. Jeśli widzisz błąd Błąd wewnętrzny Problematyczne moduły: {"startup":"error"} w konsoli błędów w przeglądarce, najczęściej powodem jest brak uprawnień MediaWiki do zapisu do domyślnego katalogu tymczasowego, gdy PHP nie ma uprawnień do zapisu do /tmp (C:\WINDOWS\TEMP w Windowsie) lub jeśli jest ograniczenie dla open_basedir, i ścieżka nie jest tam zawarta. Zobacz zadanie T119934. Możesz ustawić $wgTmpDirectory , jeśli nie możesz zmienić uprawnień domyślnego folderu tymczasowego systemu.

Błąd: nieznane słowo magiczne 'speciale'

Wersja MediaWiki:
1.20

Jeśli ten błąd pojawia się po aktualizacji, musisz uruchomić skrypt konserwacyjny rebuildLocalisationCache.php z opcją --force:

php rebuildLocalisationCache.php --force

Brakujący pasek narzędzi edycyjnych, JavaScript nie działa

Od MediaWiki 1.32, MediaWiki już nie ma wbudowanego paska narzędzi edycyjnych "zasilanego JavaScriptem". Zamiast tego administratorzy systemu muszą wybrać jedno (lub wiele) rozszerzeń dostępnych do tego celu, jeśli potrzebują funkcjonalności. Wydania "tarballe" MediaWiki zawierają rozszerzenie zastępcze, WikiEditor, także znane jako "edytor wikitekstu 2010", od wielu lat. Upewnij się, że to rozszerzenie zostało zainstalowane.

Jeżeli JavaScript nie działa (jednym ze skutków jest niepojawienie się paska narzędzi edycyjnych podczas edycji strony), może to być spowodowane błędem JavaScript. Otwórz konsolę przeglądarki (zwykle za pomocą F12) i przeładuj stronę. Obserwuj, czy są komunikaty o błędzie. Jeśli jest tam błąd, zwykle ustawianie $wgShowExceptionDetails da więcej informacji. Czasami problemem jest to, że nie można zapisać w folderze plików tymczasowych systemu. W tym przypadku możesz ustawić $wgTmpDirectory , jeśli nie możesz zmienić uprawnień domyślnego folderu tymczasowego systemu.

Jeśli dostajesz błędy jak Nieprzechwycony SyntaxError: Nieoczekiwany symbol < lub Błąd: SyntaxError: błąd składni (...) Kod źródłowy: <script (...), powodem jest zwykle hosting, który automatycznie wstawia kod HTML do śledzenia lub reklam w skrypcie load.php , który jest używany przez ResourceLoadera do ładowania skryptów i CSSa używanych przez MediaWiki. Otwórz prośbę obsługi z Twoim hostingiem, w którym się zapytasz o wyłączenie wstawiania skryptów. Jeśli to nie jest możliwe, powinieneś przenieść stronę na inny hosting. To najczęściej się zdarza na darmowych hostingach.

Wszystkie strony pokazują fatalny błąd, dziennik pokazuje "MagicWordArray::parseMatch: parameter not found"

Spróbuj odbudować cache języków:

php maintenance/rebuildLocalisationCache.php

Z tego wątku.

Wszystkie przesyłania plików nie działają z komunikatem "Przesłany plik wydaje się być pusty..."

It may be caused by wrong rewrite rules when configuring Short URLs. Spróbuj je wyłączyć (i powiązane zmienne konfiguracyjne MediaWiki), aby zobaczyć, czy to rozwiązuje problem.

Innym powodem może być limit danych, które serwer Web może otrzymać podczas jednego żądania. See Manual:Configuring file uploads#Set maximum size for file uploads for some configuration variables. Jeśli masz mod_security lub suhosin zainstalowane, to też może ograniczać rozmiar przesyłanych plików, odrzucając przesyłanie całkowicie zanim PHP to zauważy.

Check also the upload_tmp_dir configuration directive from php.ini, and be sure that the folder has proper write permissions for the user account running PHP. On Windows, this directive often points to C:\Windows\TEMP, which may not be accessible in some circumstances. In that case, you can set up a different temp folder like C:\TEMP\ with proper permissions. To discard other problems, give temporarily all permissions to that folder (on Windows, add the local user group "Everyone" with full permissions), and then restrict the permissions as needed once you verify uploads are working.

If all uploads fail with the message "Przesłany plik wydaje się pusty. Może być to spowodowane literówką w nazwie pliku. Sprawdź, czy nazwa jest prawidłowa.", and in the apache error logs you have entries like this:

Notice: Undefined index: tmp_name in /srv/www/htdocs/mediawiki/includes/WebRequest.php on line 1153
Notice: Undefined index: size in /srv/www/htdocs/mediawiki/includes/WebRequest.php on line 1140
Notice: Undefined index: error in /srv/www/htdocs/mediawiki/includes/WebRequest.php on line 1167

To jest problem z wersją PHP używanej przez Twój serwer Web. Było kilka zgłoszeń tego problemu z PHP 5.3.8 na SLES11 sp2. Potrzebna jest aktualizacja PHP lub ręczna rekompilacja.

WAMP/Apache na Windowsie: Niektóre strony specjalne są niedostępne

It may happen, on windows installations under Apache, that some Special pages are inaccessible, giving a error, and in the logs you can see something like this:

[core:error] The given path is misformatted or contained invalid characters: [client 127.0.0.1] AH00127: Cannot map GET /wiki/Special:SpecialPages HTTP/1.1 to file

To może być spowodowane przez różne bugi w PHP. Jednym z nich jest zainstalowanie wiki na dowiązaniu symbolicznym NTFS. Jeśli to nie jest problem, zaktualizowanie PHP do nowszej wersji może pomóc (zobacz ten wątek forum).

Próba zapisu edycji zwraca błąd 403 Forbidden lub przekierowuje na stronę główną

This is a common issue for shared host which have mod_security enabled. Żeby wiedzieć, czy to problem z mod_security czy nie, utwórz prostą stronę i zapisz ją z małą zawartością tekstową (coś prostego jak kropka w treści). Jeżeli ta edycja jest zapisana, ale inne nie, jest to wina mod_security. Poproś obsługę Twojego hostingu, by zostało wyłączone całkowicie, lub tylko reguły wpływające na Twoje edycje.

If even saving a very simple edit gets you redirected to the main page, or to the same page without the edit appearing, it may be a problem with how you've set up $wgServer or some other configuration variable that controls the path of the index.php script, or conflicts with rewrite rules in your webserver's configuration.

Strona logowania wyświetla uwagę o wyłączonych ciasteczkach

You may get a message like MediaWiki wykorzystuje ciasteczka do przechowywania informacji o zalogowaniu się przez użytkownika. Masz obecnie w przeglądarce wyłączoną obsługę ciasteczek. Spróbuj ponownie po jej włączeniu..

Jeśli ciasteczka nie są wyłączone w przeglądarce, może być to jeden z następujących problemów:

  • Masz $wgSessionsInMemcached ustawione na true, ale MediaWiki nie może się połączyć z Memcached. Wyłącz to ustawienie lub sprawdź konfigurację Memcached.
  • Nieprawidłowa konfiguracja ciasteczek. Zmienne konfiguracyjne o ciasteczkach powinny działać z ich wartościami domyślnymi. Spróbuj nie nadpisywać żadnej z nich.
  • session_save_path() nie jest ustawione poprawnie na serwerze, albo serwer nie ma uprawnień do zapisu do tej ścieżki.
  • Jeśli używasz proxy cache z MediaWiki, sprawdź, czy nie filtruje plików cookies.
  • session.referer_check() jest ustawione niepoprawnie. Najczęściej powinno być puste.

Ustawianie dziennika debugowania powinno wyświetlać każde ciasteczko otrzymane przez MediaWiki, więc to powinien być pierwszy krok w wykrywaniu nieotrzymanych ciasteczek.

MediaWiki nie funkcjonuje gdy magiczne cudzysłowy są włączone

Wersja MediaWiki:
1.23

Wersja MediaWiki:
1.24

Magiczne cudzysłowy to funkcja PHP, która została zdeprecjonowana w 5.3 i usunięta w 5.4. Jeśli dostajesz taki błąd, musisz wyłączyć magiczne cudzysłowy w ustawieniach serwera. Zobacz jak to zrobić.

Discussions: Thread:Project:Support_desk/Problems_with_installing_mediawiki, Topic:S79xdn9u15xw55vj, Topic:Sdpbmy9q9e0ttp6k, Topic:S7g4rybniat2i36e, Topic:S6vqwk0tysl6m8lc

Błąd podczas tworzenia miniatury: Plik o wymiarach większych niż 12,5 MP

It may help to increase $wgMaxImageArea to get rid of the problem (tried with MediaWiki 1.26.2).

Internal Server Error podczas otwierania dowolnej strony

Jeśli zdjęcia się nie wyświetlają na stronach, a ręczne otwieranie URLa dowolnego zdjęcia pokazuje stronę Internal Server Error, za problemem najprawdopodobniej stoi plik .htaccess w folderze images. Ten plik konfiguracyjny zawiera kilka reguł przepisania, aby stare wersje Internet Explorera były chronione przed zagrożeniem cross-site scripting. Niektóre hosty, np. strato.de, nie zezwalają na dyrektywę RewriteOptions w .htaccess, co sprawia, że każde żądanie o plik w folderze images się nie powiedzie z powodu błędu. Jeśli nie możesz włączyć reguł przepisania w pliku .htaccess, najpewniej trzeba zakomentować czy usunąć te linijki z pliku .htaccess, albo usunąć ten plik. Zobacz ten wątek.

Strony kategorii, Specjalna:Linkujące i użycie pliku nie są aktualizowane

Informacje o stronach będących częścią kategorii, linki do innych stron wiki i obrazów umieszczanych na stronach są śledzone w specjalnych tabelach. Aktualizacja tych tabel nie jest wykonywana tuż po zapisaniu edycji, ale wstawiana do kolejki prac z powodów wydajności. If it takes too long to update, you may need to adjust $wgJobRunRate , or try setting $wgRunJobsAsync to false in LocalSettings.php. This can happen specially in some installations since MediaWiki 1.27 (see zadanie T142751).

Błąd: Nie można otworzyć pliku blokady dla "mwstore://local-backend/local-public/./../image.png

Sprawdź, czy folder "images" ma uprawnienia do zapisu. Na przykład: chown -R www-data:www-data images i chmod -R 777 images. Jeśli SELinux jest włączony, to też może być problematyczne.

Uwaga: Nie można znaleźć aliasu dla strony specjalnej 'Foo'. Może nie ma żadnego zdefiniowanego aliasu? [Przywołane z SpecialPageFactory::getLocalNameFor w ...

Musisz stworzyć plik zastępczy, więc umieść coś jak poniżej w Twoim pliku rozszerzenia (np. /extensions/Foo/Foo.php):

$wgExtensionMessagesFiles['FooAlias'] = __DIR__ . '/Foo.alias.php';

Potem stwórz plik zastępczy w taki sposób:

<?php
/**
 * Aliases for Special:Foo
 *
 * @file
 * @ingroup Extensions
 */
// @codingStandardsIgnoreFile

$specialPageAliases = array();

/** English (English) */
$specialPageAliases['en'] = array(
   'Foo' => array( 'Foo' ),
);

Sprawdź, czy nie masz elementu $wgMessagesDirs z identycznym kluczem. Klucze $wgExtensionMessagesFiles, które są też w $wgMessagesDirs, zostaną pominięte.

Uwaga: Niewłaściwy argument przekazany do foreach() w ./includes/objectcache/SqlBagOStuff.php

Najprawdopodobniej przeniosłeś wiki i nie zaimportowałeś bazy danych, więc jest pusta.

Wydaje się, że wystąpił błąd z Twoją sesją zalogowania; to działanie zostało anulowane, aby uniknąć przechwycenia sesji. Prześlij formularz jeszcze raz.

Proszę przeczytać Manual:How to debug/Login problems .

Przywołanie niezdefiniowanej metody

Jeśli rozszerzenie MediaWiki pokazuje ten błąd po instalacji tego rozszerzenia MediaWiki, sprawdź czy pobrałeś wersję lub gałąź tego rozszerzenia, która pasuje do wersji lub gałęzi Twojej instalacji MediaWiki.

Nie można uruchamiać programów zewnętrznych, proc_open() jest wyłączone

Ta funkcja została wyłączona w php.ini. To sprawia, że nie można użyć ImageMagick do zmiany rozmiarów zdjęć do tworzenia miniatur. Albo skontaktuj się z Twoim hostingiem, albo spróbuj użyć gd zamiast ImageMagick, ustawiając $wgUseImageMagick na false.

Aktualizacja CAS się nie powiodła w user_touched dla ID użytkownika '*' (odczytany z podłączonego urządzenia); wersja użytkownika do zapisania jest starsza od obecnej wersji

Jest kilka powodów dla tego błędu. Jednym z prostych powodów jest jeśli treść kolumny user_touched w tabeli user jest pusta lub ustawiona na czas w przyszłości.

Na pewno chcesz sprawdzić, czy czas serwera jest ustawiony poprawnie i zsynchronizowany. Lub sprawdź treść tej kolumny i wypełnij kolumnę poprawną treścią np. za pomocą tej instrukcji SQL:

UPDATE `user` SET user_touched='20221203121344'
WHERE HEX(user_touched)='0000000000000000000000000000';
                      -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                      -- 28 zer

Gdzie data jest w formacie YYYYMMDDHHMMSS dla obecnej daty i godziny. See phab:T247751.

Błąd Lua: Błąd wewnętrzny

Wystąpił błąd podczas wykonywania zapytania do bazy danych. Może to wskazywać na błąd w oprogramowaniu.

Jeśli ostatnio zaktualizowałeś MediaWiki lub zainstalowałeś lub aktualizowałeś rozszerzenia, spróbuj wykonać skrypt konserwacyjny update.php . (Zobacz też Podręcznik:Aktualizowanie .)

Jeśli to nie pomaga, to być może naprawdę mógł to być bug w oprogramowaniu. Try to obtain more details about the query that fails (Manual:How to debug) and file a bug.

Klucz $wgSecretKey jest niebezpieczny, wygenerowano z mt_rand()

Twój system nie wspiera /dev/urandom, więc klucz został wygenerowany za pomocą mt_rand(). Zobacz $wgSecretKey .

Błędy PHP

Fatalny błąd: Dozwolony rozmiar pamięci X bajtów wyczerpany (próba alokacji Y bajtów)

Zwiększ limit pamięci PHP w php.ini:

memory_limit = 64M      ; Maksymalna ilość pamięci, którą może zajmować skrypt (32MB)
Wersja MediaWiki:
1.16

Możesz dodać większą wartość dla $wgMemoryLimit w LocalSettings.php.

Wersja MediaWiki:
1.15
W wersji 1.15 i wcześniejszych, limit pamięci w php.ini mógł być domyślnie nadpisany w LocalSetings.php linijką:
ini_set('memory_limit', '20M');
Możesz tu zwiększyć limit pamięci, lub zakomentować tę linijkę w LocalSettings.php, by użyć limitu określonego w php.ini.
Ten błąd może się często zdarzać z innych powodów. Spójrz na użycie Unicode w systemach, które nie wspierają go poprawnie. Look for the filename and line and if you find that you are in a language translation section that uses non-ascii characters, strip out that section. If you have increased the RAM allocated to PHP to 512MB and *still* have the problem with the memory error, it is not likely a memory issue per-se.

Read here for more information on configuring resource limits in PHP.

Fatalny błąd: Nie znaleziono klasy 'DOMDocument' w xxxxxxxx/Preprocessor_DOM.php w linijce nnn

Ten błąd się zdarza gdy PHP nie został skompilowany ze wsparciem dla DOM, lub gdy brakuje rozszerzenia DOM/xml.

  • Zainstaluj prawidłową paczkę php-xml dla Twojej dystrybucji. Przykład: sudo yum install php-xml
  • Można też zmienić klasę 'preprocesora' MediaWiki w LocalSettings.php (zobacz $wgParserConf )
$wgParserConf['preprocessorClass'] = 'Preprocessor_Hash';

Fatalny błąd: Nieprawidłowy opcode 153/1/8. w xxx/includes/cache/MessageCache.php w linijce nnn

Ten problem najprawdopodobniej wskazuje na to, że akcelerator kodu PHP nie pasuje do zainstalowanej wersji PHP lub jest nieaktualny. Spróbuj go zaktualizować. report

Uwaga: Nie można zmienić informacji o nagłówkach - nagłówki już wysłane przez (...)

Najprawdopodobniej twój edytor tekstu dodał znak kolejności bajtów podczas edycji plików PHP MediaWiki, ale dowolna treść przed otwierającym <?php powoduje ten sam problem. To się zwykle dzieje z LocalSettings.php , ale zobacz komunikat o błędzie, żeby się dowiedzieć, z którego pliku jest problem. Pamiętaj, że znaki kolejności bajtów są niewidoczne w większości edytorów tekstu. Aby usunąć BOM, edytuj plik czymś innym niż Notatnik, ale jeśli nie masz czasu, otwórz plik i wybierz Zapisz jako..., potem wybierz "Unikod (UTF-8 Bez sygnatury) - Strona kodowa 65001" jako typ pliku.

Standardy rygorystyczne: date_default_timezone_get(): Nie jest bezpieczne, by polegać na ustawieniach strefy czasowej systemu.

If you get Strict Standards: errors in the HTML output, that's because your error_reporting configuration variable of PHP is set to E_ALL, but since PHP >= 5.4.0, E_STRICT became part of E_ALL. E_STRICT to nie błędy, ale uwagi o interoperacyjności kodu i kompatybilności w przód kodu PHP, i nie powinny być widoczne w środowisku produkcyjnym.

Just add your time zone to LocalSetting.php, e.g.

$wgLocaltimezone = 'Europe/Berlin';

Poniższe nie działa we wszystkich przypadkach. Może lepiej wstawić to do php.ini, który musi być we wszystkich dotkniętych folderach.

You may turn of E_STRICT errors putting the following line of code inside your LocalSettings.php , or in case a line with the error_reporting function exists, replace it with:

error_reporting( E_ALL & ~( E_STRICT | E_NOTICE ) );

Zamiast tego możesz całkowicie wyłączyć zgłaszanie błędów PHP używając:

error_reporting( 0 );

Zobacz też: Ustawianie zgłaszania błędów w PHP.

If nothing works, please check at the start of your LocalSettings.php file: If that error happened on the setup process, the LocalSettings.php that it generated could have included the error message at the top of it (example). If that was what happened, edit the file removing everything before "<?php" and verify there's nothing (even whitespace) before "<?php".

Fatalny błąd: Nie można ponownie zadeklarować wfprofilein()

To może się zdarzyć po aktualizacji jeśli masz plik StartProfiler.php w katalogu głównym instalacji MediaWiki, na pewno dlatego, że włączyłeś profilowanie w poprzedniej instalacji. By rozwiązać problem, po prostu usuń ten plik.

Uwaga: Niedostępne pliki

Po przeniesieniu możesz zobaczyć uwagi PHP o tym, że niektóre pliki są niedostępne. This is most likely caused by zadanie T37472: The column md_deps in the module_deps table contains absolute file paths, which are used to locate the images and LESS files that CSS depends on. Te ścieżki się psują gdy np. wiki jest przeniesiona do innego folderu lub na inny serwer. Do momentu rozwiązania tego buga można użyć tego obejścia, by ręcznie naprawić nieprawidłowe rekordy w tabeli module_deps:

-- Zaktualizuj rekordy w tabeli module_deps
SET @old='wiki.old-domain.org';
SET @new='wiki.new-domain.org';

UPDATE `module_deps` SET `md_deps` = REPLACE( `md_deps`, @old, @new );

To może być użyte do aktualizacji nieprawidłowych segmentów ścieżki i naprawienia błędu.

Wersje MediaWiki:
1.17 – 1.26

Podobny problem może się zdarzyć, gdy MediaWiki próbuje czytać wiadomości z ResourceLoadera. W tym przypadku rozwiązaniem jest ucięcie odpowiadających tabel:

-- Utnij pamięć podręczną powiązaną z wiadomościami
TRUNCATE TABLE `msg_resource`;
TRUNCATE TABLE `msg_resource_links`;

Fatalny błąd: Nieprzechwycony wyjątek: extension.json nie istnieje

Wersja MediaWiki:
1.25

Jeśli ten błąd pojawia się podczas instalacji rozszerzenia, to zwykle znaczy, że rozszerzenie nadal wymaga natywnej instrukcji PHP require_once zamiast nowej metody wfLoadExtension().

Błędy instalacji

LocalSettings.php niedostępne do odczytu

  • On a Linux machine, use chown or chgrp to correct the file permissions of LocalSettings.php.
  • Na niektórych komputerach z Linuksem tymczasowo wyłącz SELinux poleceniem sudo setenforce 0.

The installer is unstyled when installing under IIS

The installer is unstyled and instead of the stylesheet, /mw-config/index.php?css=1 shows this error message: "Less_Exception_Parser from line 447 of ...\vendor\oyejorge\less.php\lib\Less\Parser.php: Less.php cache directory isn't writable: C:\Windows\TEMP"

Make sure that the webserver user, who by default is named IUSR, is allowed to access the C:\Windows\TEMP directory. Co najmniej uprawnienia do odczytu i zapisu są wymagane.

Błąd podczas wybierania bazy danych: 1044 Odmowa dostępu dla użytkownika 'username'@'localhost' do bazy danych 'wikidb'

Potrzebne jest przyznanie uprawnień na wikidb.*.

GRANT ALL ON wikidb.* TO 'username'@'localhost' IDENTIFIED BY 'password';

lub jeżeli Twój serwer Web jest na innym komputerze niż serwer bazy danych, musisz skonfigurować zdalny dostęp do MySQLa i inaczej przyznać uprawnienia

GRANT ALL ON wikidb.* TO 'username'@'192.168.0.x' IDENTIFIED BY 'password';

UWAGA: Zastąp 192.168.0.x adresem IP Twojego serwera Web. Zauważ, że apostrofy (') muszą zostać.

Baza danych zwróciła błąd "1142: polecenie CREATE zabronione dla użytkownika 'username'@'localhost' dla tabeli 'user_properties' (localhost)"

Jak powyżej, lub tymczasowo użyj użytkownika root MySQL.

Nie można znaleźć odpowiedniego sterownika bazy danych!

Wsparcie MySQL przez PHP nie jest zainstalowane lub włączone - zobacz https://php.net/book.mysqli. W zależności od systemu operacyjnego może zajść potrzeba instalacji dodatkowego pakietu. Na przykład na Debian/Ubuntu uruchom sudo apt install php-mysql.

Błędy wielkości liter w nazwach plików

Jeśli używasz innego klienta FTP niż FileZilla do przesyłania plików na serwer, upewnij się, że nie skonfigurowałeś go do zmiany nazw plików na małe lub wielkie. MediaWiki zwraca uwagę na wielkość liter w nazwach plików.

Incomplete Upload Errors

The MediaWiki package includes a lot of files, spread over dozens of directories. Be careful when uploading. If the transfer is interrupted, you might have missing or incomplete files. You may have to retry your upload several times, especially if you have an unreliable connection.

403 Forbidden with Symbolic Links

If your webserver produces a "403 Forbidden error" page and you are using symbolic links, then make sure your Apache httpd.conf file has Options FollowSymLinks to allow symbolic links and that each directory leading up to your linked directory has +x permission for user running httpd.

HTTP 500 Internal Error during installation

If your webserver produces a "500 Internal Error" at the beginning of the install process, you may need to change the permissions on the mw-config directory to 755. If you have changed the permissions for the config directory and still get an unwritable error try changing the owner to apache.

chown -R apache:apache /var/www/html/mediawiki/*

HTTP 500 Internal Error after installation

If you downloaded the MediaWiki code from Git, and after finishing the installation process, accessing your MediaWiki installation in the web browser produces a "500 Internal Error", go to the MediaWiki installation folder and running the following commands:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;

SELinux

Strona główna: SELinux

Linux distributions which support SELinux ('Security Extensions') are becoming more widespread. On such systems, PHP scripts will still be unable to write to the config directory, after you have set the normal file permissions. You will also need to use the 'chcon' command to change the SELinux file type.

Required Advertisements on Hosted Sites

If you are running the MediaWiki software on a free site that requires banners or prefix advertising, this may cause MediaWiki not to work, and appear to only generate empty pages beyond the banner advertising. You will have to contact your host to make them make their advertising compatible with MediaWiki, or choose a different host.

Debian, Apache2 i PHP

If you're running the MediaWiki on Debian with Apache2 and PHP5, and have problems connecting to MySQL, e.g you get the following error message in your browser: (Can't contact the database server: MySQL functions missing, have you compiled PHP with the --with-mysqli option?) try uncommenting: extension=mysqli.so in the /etc/php5/apache2/php.ini file.

Jeśli to nie działa, spróbuj następująco...

Sprawdź, czy moduł MySQL dla PHP jest zainstalowany:

dpkg --list | grep php-mysql

If you need to install the php5-mysql module enter:

apt-get install php-mysql

Potem zrestartuj Apache2:

/etc/init.d/apache2 restart

'user_password' nie może mieć wartości domyślnej

Upewnij się, że MySQL nie jest w trybie rygorystycznym.

Missing table prefix

If you are using a hosting service, the database name and database username may have an extra prefix (normally the userid given by your hosting provider). For example, if you have created a database named db01 with username u01 and your userid is ocom (given by your hosting provider), you should enter the database name and database username as ocom_db01 and ocom_u01 respectively.

MySQL connection fails with error [2013] or [2002]

If you are getting the error: failed with error [2013] Lost connection to MySQL server during query. or failed with error [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)., this may be caused by using the wrong database host name or by a permissions issue with the mysql.soc file or directory.

If you are using a hosting provider, ensure that you are using the correct host name for the database.

The MySQL manual has a good set of pages on dealing with common errors (such as these). Visit the page for links to documentation for other versions of MySQL.

If you are unsure if MySQL is even installed, try the command mysql from the command line; if it is not installed, see Manual:Running MediaWiki#System-specific instructions.

Nie znaleziono użytecznych plików binarnych UNIX

W błędach jest:

  • Nie znaleziono GNU diff3
  • Nie znaleziono oprogramowania kontroli wersji Git
  • Nie znaleziono ImageMagick

PHP musi mieć dostęp do /usr/bin. W php.ini (prawdopodobnie w /etc/php/php.ini) dodaj :/usr/bin/ do zmiennej konfiguracyjnej open_basedir jak poniżej:

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/var/www/:/usr/bin/

Aby wyłączyć Git, ustaw $wgGitBin na ścieżkę, która jest dozwolona, ale nie istnieje.

$wgGitBin = "";

"Zabronione: Nie masz uprawnień do dostępu /mediawiki/ na tym serwerze."

To jest zwykle problem z konfiguracją oprogramowania Twojego serwera Web, niezwiązane z samym MediaWiki. Zobacz przykład tutaj lub na innych forach serwera Web.

Błędy po aktualizacji

Brakuje pola rc_timestamp w tabeli recentchanges. Nie powinno się dziać.

Może się zdarzyć po aktualizacji z MediaWiki 1.27 do innej wersji. Jeśli nie ma treści w bazie danych, możesz zobaczyć tę wiadomość: Zobacz phab:T236671.

To może się zdarzyć, jeśli zdefiniowałeś inny $wgDBprefix niż Twoja oryginalna instalacja, co sprawia, że MediaWiki nie może znaleźć swoich tabel. Sprawdź istniejące tabele w bazie danych i zobacz, czy wszystkie mają wspólny prefiks, i zaktualizuj to jak trzeba.

Innym powodem może być ustawienie pustej bazy danych. Zainstaluj ponownie treść bazy danych z kopii zapasowej i przejdź dalej z migracją.

Parsoid / VisualEditor

See Parsoid/Troubleshooting and Extension:VisualEditor#Troubleshooting.

Przypisy

Zobacz też