Podręcznik:Częste błędy i symptomy
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 wphp.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 niephp.ini
, to może skutkować pustym ekranem bez wyjścia z błędem z serwera Web czy PHP. Można to naprawić, aktualizując wpismysql.default_socket
w plikuphp.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 lub Apache.
Aby zmodyfikować to ustawienie, zmień /etc/php.ini
i zwiększ ustawienie 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ą np. na "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 wystąpi 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). PCRE 8.33 i 8.34 zostały wydane w 2013 r.
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 ustawić $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
albo/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 "Nie powiodła się alokacja pamięci" czy "/bin/ulimit4.sh: Naruszenie ochrony pamięci /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:
- Błąd tworzenia miniatury: Nieprawidłowe parametry miniatury
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 --z-różnymi-przełącznikami --with-jpeg-dir --with-gd --więcej-przełączników
make
make test
# przełącz na 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ąć
, aby zobaczyć, czy to naprawi problem.
$wgReadOnly
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.
To polega na tworzeniu mniejszych obrazów w żądanym rozmiarze i przesyłaniu ich do folderu thumb/
w $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, żeby wprowadzili 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ę).
Należy zobaczyć komentarz podobny do /* Nie wymagane są moduły. Max kazał mi to tu umieścić */
.
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. Problemy pojawiają się z wartościami ok. 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
Zlokalizowane ciągi znaków wyświetlają identyfikator wiadomości zamiast zlokalizowanego wyniku
Jeśli widzisz to, spróbuj uruchomić skrypt utrzymania rebuildLocalisationCache.php z opcją --force
:
php rebuildLocalisationCache.php --force
To zmusi MediaWiki do odbudowy pamięci cache lokalizacji.
Brakujący pasek narzędzi edycyjnych, JavaScript nie działa
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: nie znaleziono parametru"
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..."
To może być spowodowane nieprawidłowymi regułami przepisania podczas konfiguracji krótkich URLi. 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. Zobacz Manual:Configuring file uploads#Set maximum size for file uploads dla niektórych zmiennych konfiguracyjnych. 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.
Sprawdź także dyrektywę upload_tmp_dir z php.ini i upewnij się, czy folder ma właściwe uprawnienia do zapisu dla użytkownika uruchamiającego PHP.
Na Windowsie ta dyrektywa często wskazuje na C:\Windows\TEMP
, co może być niedostępne w niektórych warunkach.
W tym przypadku możesz ustawić inny folder tymczasowy jak C:\TEMP\ z poprawnymi uprawnieniami.
Aby odrzucić wszystkie problemy, tymczasowo daj temu folderowi wszystkie uprawnienia (na Windowsie, dodaj lokalną grupę użytkowników "Wszyscy" z pełną kontrolą) i potem ogranicz uprawnienia, jak należy, po sprawdzeniu, czy przesyły działają.
Jeśli wszystkie przesyły nie działają z wiadomością "Przesłany plik wydaje się pusty. Może być to spowodowane literówką w nazwie pliku. Sprawdź, czy nazwa jest prawidłowa." i w dzienniku błędów Apache są wpisy jak:
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
Może się zdarzyć na instalacjach na Windowsie pod Apache, że niektóre strony specjalne są niedostępne, co daje błąd, i w dzienniku widzisz następujące wpisy:
[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ą
To jest częsty problem na wspólnych hostingach, które mają włączone mod_security
.
Ż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.
Jeśli zapisywanie nawet prostej edycji przekierowuje Cię na stronę główną lub na tę samą stronę bez edycji, może być to problem z ustawieniem $wgServer
lub jakiejś innej zmiennej konfiguracyjnej, która kontroluje ścieżkę skryptu index.php, lub jest zakłócana przez reguły przepisania w konfiguracji Twojego serwera Web.
Strona logowania wyświetla uwagę o wyłączonych ciasteczkach
Ta strona jest przestarzała. |
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 natrue
, 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 ciasteczek.
- 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ć.
Dyskusje: 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
Zwiększenie $wgMaxImageArea
może pomóc pozbyć się problemu (przetestowano na 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.
Edits not appearing in Recent Changes, Recent Changes not updating
By default there's a filter in Recent Changes to hide edits made by bots. Clear this filter and see if the edits appear.
If enabling the display of edits made by bots doesn't make them appear in Recent Changes, the problem is usually in one of the installed extensions, causing an error when Recent Changes are updated.
The update of Recent Changes when performing an edit or other action is deferred until the page has been sent to the browser. However, an error can abort such updates, and the error not get displayed to the user. To detect such errors, Set up a debug log file (remember to disable it once you've completed the diagnosis), and save a new edit to a page. If an error happens, it should be logged there —but note it will also log a lot of other things, try to search for "error" or "exception".
An error may give a stack trace of the execution, and it may point to an extension likely causing the error.
Ensure your extensions are compatible with your MediaWiki version.
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.
Jeśli aktualizacja trwa zbyt długo, być może trzeba dopasować $wgJobRunRate
, lub spróbować ustawić $wgRunJobsAsync
na false
w LocalSettings.php.
To może się zdarzyć na niektórych instalacjach, zwłaszcza począwszy od MediaWiki 1.27 (zobacz 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 sprawiać problemy.
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 z aliasami, 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 z aliasami 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.
Warning: Invalid argument supplied for foreach() in ./includes/cache/localisation/LocalisationCache.php on line 459
To fix the warning uncomment in LocalSettings.php line
#$wgCacheDirectory = "$IP/cache";
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
.
<span id="CAS_update_failed_on_user_touched
_for_user_ID_'*'_(read_from_slave);_the_version_of_the_user_to_be_saved_is_older_than_the_current_version">
Aktualizacja CAS się nie powiodła w user_touched
dla ID użytkownika '*' (odczytany z poddanego); wersja użytkownika do zapisania jest starsza od obecnej wersji
Jest kilka powodów dla tego błędu. Jedną z nich jest to, czy zawartość 2 dolarów jest pusta lub jest 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='20240901002845'
WHERE HEX(
user_touched
)='0000000000000000000000000000';
-- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-- 28 zer
Gdzie data jest w formacie YYYYMMDDHHMMSS dla obecnej daty i godziny. Zobacz 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. Spróbuj uzyskać więcej szczegółów na temat nieudanego zapytania (Podręcznik:Jak debugować ) i zgłoś błąd .
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
.
MediaWiki wymaga PHP 7.4.3 lub wyższej; używasz PHP 7.3.17
Jeśli wersja PHP na serwerze Web powinna być wystarczająco nowa, sprawdź, czy masz kilka wersji PHP zainstalowanych równocześnie.
Tworz plik info.php
z zawartością jednoliniową <?php phpinfo();
i umieść go w katalogu internetowym.
Uzyskaj dostęp do niego za pomocą przeglądarki internetowej.
Wyświetli wersję PHP używaną przez serwer Web.
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 |
ini_set('memory_limit', '20M');
Czytaj tutaj, aby się dowiedzieć więcej o konfiguracji ograniczeń zasobów w 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ę 'preprocessor' 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.
Jeśli otrzymujesz błędy Strict Standards: w wyjściu HTML, to jest dlatego, że zmienna konfiguracyjna PHP error_reporting
jest ustawiona na E_ALL
, ale od PHP 5.4.0 E_STRICT stało się częścią 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.
Po prostu dodaj strefę czasową do LocalSettings.php, np.
$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.
Możesz wyłączyć błędy E_STRICT, dodając następującą linijkę kodu do LocalSettings.php , lub jeśli linijka z funkcją error_reporting
istnieje, zastąp ją:
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.
Jeśli nic nie działa, sprawdź na początku LocalSettings.php file:
Jeśli ten błąd zdarzył się podczas procesu instalacji, wygenerowany LocalSettings.php mógł zawierać komunikat o błędzie na górze (przykład).
Jeśli to się zdarzyło, edytuj plik, usuwając wszystko przed
i sprawdź, czy nie ma nic (nawet spacji) przed <?php
.
<?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.
To jest najprawdopodobniej spowodowane przez zadanie T37472:
kolumna md_deps
w tabeli module_deps zawiera bezwzględne ścieżki plików użyte do zlokalizowania obrazów i plików LESS, od których zależy CSS.
Te ścieżki się psują np. gdy 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 <code>module_deps</code>
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ć komunikaty z ResourceLoadera. W tym przypadku rozwiązaniem jest ucięcie odpowiadających tabel:
-- Utnij pamięć podręczną powiązaną z komunikatami
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
- Na komputerze z Linuksem użyj
chown
lubchgrp
, by poprawić uprawnienia plikuLocalSettings.php
. - Na niektórych komputerach z Linuksem tymczasowo wyłącz SELinux poleceniem
sudo setenforce 0
.
Instalator nie ma stylów pod IIS
Instalator nie ma stylów i zamiast arkusza stylów, /mw-config/index.php?css=1
pokazuje ten błąd: "Less_Exception_Parser z linijki 447 w ...\vendor\oyejorge\less.php\lib\Less\Parser.php: Nie można zapisać do folderu cache Less.php: C:\Windows\TEMP"
Upewnij się, że użytkownik serwera Web, który ma domyślnie nazwę IUSR
, ma dostęp do folderu C:\Windows\TEMP.
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 wielkości liter w nazwach plików. MediaWiki zwraca uwagę na wielkość liter w nazwach plików.
Błędy: przesył niekompletny
Pakiet MediaWiki zawiera mnóstwo plików zawartych w dziesiątkach folderów. Uważaj podczas przesyłania. Jeśli transfer jest przerwany, może brakować pliku lub mogą znaleźć się niekompletne pliki. Należy spróbować przesyłać ponownie kilka razy, szczególnie jeśli masz niestabilne połączenie.
Błąd 403 Forbidden z dowiązaniami symbolicznymi
Jeśli Twój serwer Web zwraca stronę z błędem "403 Forbidden" i używasz dowiązań symbolicznych, sprawdź, czy twój plik httpd.conf
Apache ma Options FollowSymLinks
, by zezwolić na dowiązania symboliczne, i każdy folder prowadzący do dowiązanego folderu ma uprawnienie +x
dla użytkownika, pod którym httpd jest uruchamiany.
Błąd HTTP 500 Internal Error podczas instalacji
Jeśli Twój serwer Web stwarza błąd "500 Internal Error" na początku instalacji, na pewno trzeba zmienić uprawnienia folderu mw-config
na 755.
Jeśli zmieniłeś uprawnienia folderu konfiguracji i nadal występuje błąd, że folder nie ma dostępu do zapisu, spróbuj zmienić właściciela na apache.
chown -R apache:apache /var/www/html/mediawiki/*
Błąd HTTP 500 Internal Error po instalacji
Jeśli pobrałeś kod MediaWiki z Git i po ukończeniu instalacji w przeglądarce występuje błąd "500 Internal Error", przejdź do folderu instalacji MediaWiki i wykonaj następujące polecenia:
find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
SELinux
Na popularności zyskują dystrybucje Linuksa, które wspierają SELinux ('Security Extensions'). Na takich systemach skrypty PHP nadal nie mogą zapisywać do folderu konfiguracyjnego po ustawieniu zwykłych uprawnień. Poza tym potrzebne jest użycie komendy 'chcon', aby zmienić typ pliku SELinux.
Wymagane reklamy na hostowanych witrynach
Jeśli uruchamiasz oprogramowanie MediaWiki na darmowej witrynie, która wymaga banerów lub reklamowania prefiksu, to może sprawić, że MediaWiki nie zadziała i tylko wygeneruje puste strony poza banerami reklamowymi. Musisz skontaktować się z hostem, aby reklamowanie było kompatybilne z MediaWiki lub wybrać innego hosta.
Debian, Apache2 i PHP
Jeśli uruchomiłeś MediaWiki na Debianie z Apache2 i PHP 5 i masz problemy z łączeniem się z MySQL, np. dostajesz takie wiadomości w przeglądarce: (Nie można skontaktować się z serwerem bazy danych: brakuje funkcji MySQL, czy skompilowałeś PHP z opcją --with-mysqli?), spróbuj odkomentować
w pliku /etc/php5/apache2/php.ini.
extension=mysqli.so
Jeśli to nie działa, spróbuj następująco...
Sprawdź, czy moduł MySQL dla PHP jest zainstalowany:
dpkg --list | grep php-mysql
Jeśli potrzebujesz zainstalować moduł php5-mysql wpisz:
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.
Brakujący prefiks tabeli
Jeśli używasz hostingu, nazwa bazy danych i nazwa użytkownika może mieć dodatkowy prefiks (zwykle identyfikator użytkownika podany przez hosting). Na przykład jeśli stworzyłeś bazę danych o nazwie db01 z nazwą użytkownika u01, a twój identyfikator użytkownika to ocom (podany przez hosting), powinieneś podać nazwę bazy danych i nazwę użytkownika odpowiednio jako ocom_db01 i ocom_u01.
Połączenie MySQL nie działa z błędem [2013] lub [2002]
Jeśli otrzymujesz błąd: nie powiodło się z błędem [2013] Stracono połączenie podczas zapytania. czy nie powiodło się z błędem [2002] Nie można się połączyć z lokalnym MySQL przez gniazdo '/var/lib/mysql/mysql.sock' (13)., to może być spowodowane błędną nazwą hosta bazy danych lub przez problem z uprawnieniami z plikiem, lub folderem mysql.soc.
Jeśli używasz hostingu, upewnij się, że używasz poprawnej nazwy hosta dla bazy danych.
Podręcznik MySQL ma trochę dobrych stron na temat zapobiegania częstym problemom (takich jak ten). Odwiedź stronę dla linków do dokumentacji dla innych wersji MySQLa.
Jeśli nie masz pewności, czy MySQL jest zainstalowany, spróbuj polecenie mysql
z wiersza poleceń; jeśli nie jest zainstalowany, zobacz Podręcznik:Instalowanie 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.
Za dużo przekierowań (ERR_TOO_MANY_REDIRECTS)
Kiedy zdarza się to na każdej stronie, jest to zwykle spowodowane niewłaściwą konfiguracją Manual:Short URL , zwykle z powodu błędu w regułie przekierowania.
Może to również nastąpić, gdy $wgForceHTTPS
jest ustawiony na true
, a MediaWiki nie wykrywa odpowiednio protokołu używanego przez klienta i nadal wysyła przekierowanie do https:.
Może to się zdarzyć, gdy MediaWiki jest ustawione za odwrotnym proxy, które nie ustawia nagłówka HTTP X-Forwarded-Proto
na https
.
Błędy po aktualizacji
<span id="Missing_rc_timestamp
_field_of_recentchanges
_table._Should_not_happen.">
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ą.
"Can not upgrade from versions older than 1.31, please upgrade to that version or later first" (or variants)
Some upgrades cannot be performed without an intermediary upgrade. For instance, to upgrade from a wiki older than 1.33 to MW 1.39.1, you will need to upgrade to 1.35 first. See task phab:T326071.
This error message can also be a red herring. It may appear when you are trying to update an empty database, without tables. Create the database first by installing the wiki.
Parsoid / VisualEditor
Zobacz Parsoid/Troubleshooting i Extension:VisualEditor#Troubleshooting .
Przypisy