Handleiding:Fouten en oorzaken
U ziet een lege pagina
Bij een lege pagina is er meestal een fout in PHP opgetreden maar de foutmelding wordt niet getoond.
Voeg de volgende regels toe aan het bestand LocalSettings.php
onder de
:
<?php
error_reporting( E_ALL );
ini_set( 'display_errors', 1 );
U kunt ook een waarde voor error_log
zetten in PHP.ini
en in de PHP-log zoeken naar wat er fout gaat.
Soms staat een PHP-fout ook in de webserver-log.
Een foutrapport kan bevatten:
- "Warning [...] It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function." Controleer of de instelling
date.timezone =
(goed) geconfigureerd is inphp.ini
. - Er kan gemeld worden dat een bepaald bestand ontbreekt (bijvoorbeeld als de map
media
in uw map/includes
er niet meer is, u kunt dan een foutboodschap krijgen van een proces voor afbeeldingen "failed to open stream"). Controleer het originele installatie package op MediaWiki (let op de versie!) om te zien of dat het geval is. Kopieer in dat geval de ontbrekende bestanden uit het package in uw map MediaWiki. Het kan daarna nodig zijn om de cache te legen en de webserver te herstarten. - MySQL socket cannot be found. Als
LocalSettings.php
wel op het goede MySQL-socket is gezet maarphp.ini
niet, dan kan dat leiden tot een leeg scherm zonder foutmelding van de webserver of PHP. Dit is te verhelpen door de gegevens vanmysql.default_socket
aan te passen in het bestandphp.ini
.
Veel mensen hebben aangegeven dat ze een lege pagina kregen in een recent geïnstalleerde versie van de wiki na het toevoegen van een artikel.
Een waarschijnlijke oorzaak is de geheugenlimiet in de standaard php-installatie (meestal 8 MB).
Controleer a.u.b. de logbestanden van PHP en/of de webserver (Apache).
Om deze instelling aan te passen, wijzig /etc/php.ini
en verhoog de instelling "memory_limit".
Zet het bijvoorbeeld op 32 MB, vervang de bestaande tekst door memory_limit = 32M
.
Herstart de webserver na het doen van deze wijziging.
De limiet kan ook in uw bestand LocalSettings.php
zijn gezet.
Zoek naar de regel met de instelling memory_limit en verhoog de waarde.
20M kan te laag zijn als u versie 1.15.1 heeft.
Wijzig het naar bijvoorbeeld "memory_limit = 32M
".
Na deze wijziging hoeft u de webserver niet te herstarten.
Als de pagina enige tijd blijft hangen bij het laden (zeg 30 seconden) bij een specifieke actie, en u daarna een lege pagina te zien krijgt of een 'HTTP 500 error', dan is het probleem waarschijnlijk een time-out van de verbinding.
Dit kan de database-server zijn of het gebeurt bij een specifieke actie, de mail-server (als u de instellingen voor e-mail heeft geconfigureerd).
Als het de e-mailserver is, controleer dan of u ermee kunt verbinden vanaf de server waar MediaWiki op draait, bijvoorbeeld, het uitvoeren van de Telnet cliënt naar de server en of de poort geconfigureerd is op $wgSMTP
, kijk of de connectie gemaakt kan worden.
Als u de inhoud van de pagina kort kunt zien voordat de pagina leeg wordt, dan wordt het probleem mogelijk veroorzaakt door de aanwezigheid van een document.write
, document.writeln
of document.open
JavaScript in een van de scripts van de wiki.
U kunt dat controleren door de browserconsole te openen (met F12) en de pagina te herladen.
Als de tab netwerk een HTTP 200 status toont, en de transfer is van een paar kilobytes, dan is dat waarschijnlijk de oorzaak.
Dit zijn verouderde methoden van de interface Document
die veroorzaken dat de hele pagina leeg wordt als het buiten de HTML van de pagina wordt gebruikt, het kan aanwezig zijn op de wiki's JavaScript pagina's.
Het gebruik ervan wordt sterk afgeraden, zoals aangegeven in de HTML specificatie.
U kunt JavaScript uitschakelen in uw webbrowser, of $wgUseSiteJs
en $wgAllowUserJs
op false zetten om die scripts uit te schakelen totdat u de fout in de scripts heeft hersteld.
Fouten in MediaWiki
Alle pagina's hebben geen inhoud, maar wel wikitekst bij het bewerken van de pagina
Eventueel met foutmeldingen als:
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
Dit wordt veroorzaakt door een wijziging in PCRE 8.34, die niet langer namen van 'capturing' groepen toestaat die met een cijfer beginnen. U moet de MediaWiki bijwerken naar een ondersteunde versie. Zie Updating to PCRE 8.33 or Higher . Het probleem is opgelost in alle nu ondersteunde versies van MediaWiki (taak T60640). De releases van PCRE 8.33 en 8.34 waren in 2013.
Zie rapport: Topic:Rz2zo0m88rrxqrfn, Thread:Project:Support desk/MediaWiki don't work with PCRE 8.34 (2)
Miniaturen van afbeeldingen werken niet of worden niet getoond
Hier noemen we de problemen en de oplossingen bij het niet kunnen maken van een miniatuur of het niet kunnen tonen.
Error creating thumbnail: File missing:
Dit kan komen door verkeerde waarden in de globale variabelen zoals uitgelegd in:
Decimal-point in srcset locale bug
Als er geen miniaturen worden getoond en er geen foutmelding wordt getoond, kijk dan eens naar de HTML-bron van de pagina en zoek naar "srcset
".
Als u iets vindt als <img ... srcset="/images/thumb/File.png/600px-File.png 1,5x, /images/thumb/File.png/800px-File.png 2x">
, waar het 1,5x
lijkt te zijn in plaats van 1.5x
, dan wordt het probleem veroorzaakt door taak T181987. U dient dit toe te voegen aan LocalSettings.php:
setlocale(LC_NUMERIC, "C");
Controleer dat er geen $wgShellLocale
is gedefinieerd in uw LocalSettings.php, of voeg ook dit toe:
$wgShellLocale = "C.UTF-8";
SVG
Bepaal eerst uw instelling van $wgSVGConverter
.
Standaard wordt ingesteld dat voor de conversie ImageMagick wordt gebruikt.
Gebruik ImageMagick
U heeft minimaal versie 6.x.x nodig van ImageMagick.
Controleer of de variabele $wgImageMagickConvertCommand
een geldige waarde heeft.
Normale instellingen zijn:
$wgImageMagickConvertCommand = "/usr/bin/convert";
$wgImageMagickConvertCommand = "/usr/local/bin/convert";
Als dat niet werkt, probeer de instelling $wgSVGConverterPath
.
$wgSVGConverterPath = "/usr/bin";
$wgSVGConverterPath = "/usr/local/bin";
Gedeelde hosts kunnen verschillende versies van ImageMagick hebben. Gebruik a.u.b. versie 6.x.x.
- Om uw geïnstalleerde van ImageMagick op te zoeken, kijk in de helpbestanden van uw provider of gebruik
/usr/bin/convert --version
of/usr/local/bin/convert --version
. - Op GoDaddy Linux gedeelde hosts, "/usr/bin/convert" in versie 5.5.6 en "/usr/local/bin/convert" in versie 6.2.8.
Als met ImageMagick het genereren van miniaturen mislukt, met een webserver foutmelding in de log als "Memory allocation failed" of "/bin/ulimit4.sh: Segmentation fault /usr/bin/convert ...", probeer het dan eens met een hogere waarde van $wgMaxShellMemory
.
Als het pad geen non-ASCII tekens bevat
- Controleer of de 'UTF-8 locals' beschikbaar zijn op uw server door het uitvoeren van
locale -a
- Indien ze niet beschikbaar zijn, voer dan
locale-gen en_US.utf8
uit of gebruik de locales met UTF-8 voor uw land en wijzig hiervoor de waarde van$wgShellLocale
.
Als u IIS/FastCGI op Windows gebruikt, dan moet het gebruikte (Gast) account ook rechten om uit te voeren hebben op C:\Windows\System32\cmd.exe anders krijgt u de foutmelding "Unable to Fork".
Gebruik Batik
MediaWiki gebruikt limieten voor tijd en geheugen bij shell commando's in Linux.
Bij de foutmelding "Error occurred during initialization of VM, Could not reserve enough space for object heap, Could not create the Java virtual machine.", probeer het eens met een hogere waarde van $wgMaxShellMemory
.
Gebruik rsvg
Op enkele Linux en BSD installaties is rsvg hernoemd:
In plaats van instelling (standaard)
$wgSVGConverters = array( 'rsvg' => '$path/rsvg -w$width -h$height $input $output' );
zou u wil instellen
$wgSVGConverters = array( 'rsvg' => '$path/rsvg-convert -w $width -h $height -o $output $input' );
JPEG
Symptoom: Deze foutmelding in een grijs veld:
- Fout bij het maken van miniatuur: ongeldige miniatuurparameters
Een oorzaak kan zijn dat het aantal pixels in de originele afbeelding hoger is dan $wgMaxImageArea
.
De standaardwaarde 1.25e7 is te klein voor veel moderne camera's.
Helaas geeft de foutopsporing niet het probleem aan.
U kunt de waarde van $wgMaxImageArea
verhogen of voortaan ImageMagick gebruiken waardoor de beperking er niet meer is ($wgUseImageMagick
en $wgImageMagickConvertCommand
instellen).
Het verwerken van grote afbeeldingen kan even duren. Het is goed om het formaat van de afbeeldingen te bepalen.
JPEG (via GD)
Symptoom: Deze foutmelding in een grijs veld:
- Error creating thumbnail: Incomplete GD library configuration: missing function imagecreatefromjpeg
In de nu verouderde PHP versies 4.x en 5.x zat een bug waardoor libjpeg in stap ./configure
niet werd ingeschakeld; dit trad toen veel op in Red Hat/RHEL/CentOS systemen.
De oplossing is (als u geen ImageMagick gebruikt) om PHP opnieuw te compileren.
Bekijk eerst (met phpinfo()
) wat de bestaande ./configure
switches zijn, voeg --with-jpeg-dir
toe voor --with-gd
.
make clean
./configure --with-various-switches --with-jpeg-dir --with-gd --with-more-switches
make
make test
# switch naar de root
make install
Herstart daarna de webserver (voor Apache op Red Hat: service apache stop
dan service apache start
).
Om te testen, bekijk opnieuw het bestand:... (Opnieuw uploaden is niet nodig).
Voor meer informatie, bekijk de opmerkingen bij PHP: imagecreatefromjpeg
De miniaturen kunnen niet worden opgeslagen
Als u de foutmelding "Error generating thumbnail / Error creating thumbnail: Unable to save thumbnail to destination" en er op de map $wgUploadDirectory
de goede rechten zijn (op alle niveaua's), controleer dan of $wgTmpDirectory
wel bestaat.
(Tenzij sommige variabelen voor het pad als $wgCacheDirectory
en $wgTmpDirectory niet runtime zijn aangemaakt.)
Als u het loggen aanzet met $wgDebugLogFile
krijgt u waarschijnlijk meer gedetailleerde foutmeldingen.
Deze fout kan ook optreden als de mode 'read only' ($wgReadOnly
) wordt gebruikt, controleer dit in LocalSettings.php
.
U kunt kijken of het verwijderen van
het probleem oplost.
$wgReadOnly
Fout (25) bij aanmaken miniatuur
Als u bij ImageMagick de foutmelding "Error creating thumbnail Error code: 25" krijgt, probeer dan een hogere waarde van $wgMaxShellFileSize
.
Handmatig miniaturen toevoegen
In situaties waar het niet haalbaar is om miniaturen dynamisch op verzoek te maken (bijvoorbeeld bij erg grote afbeeldingen, met foutmeldingen als "Error creating thumbnail: unable to extend cache", "Error creating thumbnail: convert: no images defined", ...), is het mogelijk om handmatig de bestanden van de miniaturen toe te voegen.
Dit is het aanmaken van kleinere afbeeldingen in de gewenste formaten en het uploaden naar de map thumb/
in $wgUploadDirectory
.
Een voorbeeld, een bestand moet geüpload worden naar:
images/f/f8/Foo.png
dan moeten de miniaturen zijn:
images/thumb/f/f8/Foo.png/100px-Foo.png images/thumb/f/f8/Foo.png/600px-Foo.png
De pixelgrootte is de horizontale dimensie. Een voorbeeld van een Bash-script om miniaturen (thumbnails) aan te maken staat in Phabricator:P7049.
Fout (-1) bij aanmaken miniatuur op OVH gedeelde hosting
Door een onbekende oorzaak krijg men bij het aanmaken van miniaturen op enkele gewijzigde OVH hosting deze fout, ook al werkt het uitvoeren van het commando in de SSH shell wel.
De oplossing is het voorkomen dat ImageMagick wordt gebruikt door $wgUseImageMagick
op false te zetten in LocalSettings.php:
$wgUseImageMagick = false;
Sorry! We could not process your edit due to a loss of session data. Please try again. If it still doesn't work, try logging out and logging back in.
Inhoud limieten
Als de Apache server de Hardened PHP patch heeft, dan moet u mogelijk meerdere variabelen wijzigen in uw bestand /etc/php.ini als u wiki pagina's wilt hebben met veel inhoud.
Bekijk de instellingen, vooral varfilter.max_value_length
, hphp.post.max_value_length
en hphp.request.max_value_length
.
De standaardinstellingen kunnen uw pagina beperken tot minder dan 10k of 64k in grootte.
Als de Apache server gebruikt maakt van mod_security dan kan dat de werking van MediaWiki verstoren. Om MediaWiki goed te laten werken, kunt u dit uitschakelen.
You have not specified a valid user name / Completely blank page edits and previews / Unable to upload
Dit wordt veroorzaakt door het afkappen of verlies van POST-data van de webbrowser naar de webserver.
In minstens een geval werd dit veroorzaakt doordat post_max_size
en upload_max_filesize
te hoog waren gezet (2048M) in php.ini.
Door ze terug te zetten op redelijke waarden (8M) was het probleem opgelost.
Het leek er op dat er geen POST-data op de MediaWiki terecht kwam.
In een ander geval verstoorde mod_auth_sspi de http-posts naar MediaWiki. Gebruik van FireFox en het invoeren van de 'domain credentials' zou goed werken maar MSIE (Internet Explorer) zou niet werken. Dit is een bekend probleem in mod_auth_sspi 1.0.4.
Er zijn opties om het te laten werken:
- Zet SSPIOfferSSPI uit ← gebruikers worden dan geprompt om de 'domain credentials' in te voeren, hetzelfde als BASIC mode
- Zet SSPIPerRequestAuth aan ← De Engelse schrijver ziet dit als een ongezonde configuratie, maar het werkt (een lange wachttijd bij de verbinding)
- Downgraden naar 1.0.3 maar het is eigenlijk hetzelfde als #2 hierboven.
De wiki lijkt geen toegepaste stijlen te hebben en de afbeeldingen ontbreken
Als de wiki er goed uitziet als u op dezelfde server zit als waar de wiki opstaat, maar de CSS lijkt te ontbreken (geen kleur, geen achtergrond, geen afbeeldingen, erg weinig opmaak, enz) als u het vanaf andere plekken benaderd, dat is het meest waarschijnlijke dat de server de IP of de hostnaam niet kan bepalen die wordt gebruikt om het te benaderen of het is verkeerd ingesteld. Hierdoor gaan URL's de stylen en afbeeldingen zoeken met het IP-adres waarop ze terugvallen 127.0.0.1, dat is de localhost of een hostnaam die niet buiten de server bekend is. U kunt de broncode zien van elke pagina en kijken hoe de URL's er uit zien en wat er gebeurt als u ze direct via de webbrowser probeert te benaderen.
De oplossing is om handmatig de variabele $wgServer
te specificeren op de hostnaam die iedereen gebruikt om de wiki te benaderen.
Als de wiki wordt benaderd via een intern en een extern netwerk, dan moet u mogelijk het externe adres gebruiken voor $wgServer
.
Vergeet niet de poort als u een niet-standaard poort gebruikt, voor het geval uw ISP de poort 80 heeft geblokkeerd (Voorbeeld: $wgServer = "http://example.domain.com:8080";
)
Als de stijlen niet worden toegepast als u kijkt vanaf de server waar de wiki staat, kan het er een PHP-fout zijn in het ResourceLoader load.php
script.
Probeer het bestand load.php van uw MediaWiki installatie te bekijken via uw webbrowser en controleer of er een fout wordt getoond of een (lege pagina).
U zou iets als : /* No modules requested. Max made me put this here */
moeten zien.
Als dat zo is, dan kan er een probleem zijn met het bestand .htaccess
van de webserver.
Als u echter een '404 Not found error' krijgt, dan kan het een probleem zijn met de 'rewrite rules' van de webserver als u probeert korte URL's te configureren.
Als u 500 error foutmeldingen krijgt van load.php url's, controleer dan de logbestanden van de webserver om meer informatie te krijgen over de oorzaak.
Er schijnt een probleem te zijn met enkele PHP-versies en Gentoo die zorgt dat Apache een segfault veroorzaakt.[1]
Dit kan ook gebeuren als u APC heeft ingeschakeld, het instellen van apc.serializer=php
in php.ini kan helpen.[2]
Vanaf MediaWiki 1.23 krijgt u vaak een wiki met veel stijlen afkomstig uit de skin Vector, zoals zijbalk onderaan de pagina. Dat kan worden veroorzaakt door een lage ingestelde waarde van pcre.backtrack_limit in enkele distributies als FreeBSD. Het is bekend dat er problemen zijn met waarden als 10000. Verhoog de waarde naar 100.000 of naar de huidige standaardwaarde 1.000.000.
Sinds MediaWiki 1.26 kunnen enkele skins, vooral Vector, dit probleem hebben.
Als u deze fout ziet Internal error Problematic modules: {"startup":"error"} in de foutconsole van uw browser, dan is het waarschijnlijk dat de MediaWiki te weinig schrijfrechten heeft in de standaard map temp, of dat PHP geen recht heeft om te schrijven in /tmp
(C:\WINDOWS\TEMP
op Windows) of omdat er een open_basedir restrictie is en dat het pad daar geen deel van uitmaakt.
Zie taak T119934.
U kunt ook $wgTmpDirectory
instellen als u de rechten niet kunt wijzigen van de standaardmap 'temp' van het systeem.
Error: invalid magic word 'speciale'
MediaWiki-versie: | ≥ 1.20 |
Als u die foutmelding na het upgraden krijgt, voer dan het onderhoudsscript rebuildLocalisationCache.php uit met de optie --force
:
php rebuildLocalisationCache.php --force
Gelokaliseerde tekenreeksen tonen hun ID in plaats van een gelokaliseerd resultaat
Als u dit ziet, probeer het onderhoudsscript rebuildLocalisationCache.php te laten draaien met de optie --force
:
php rebuildLocalisationCache.php --force
Dit zal MediaWiki dwingen om de lokalisatie cache opnieuw op te bouwen.
Werkbalk voor bewerken ontbreekt, JavaScript werkt niet
Als JavaScript niet werkt (er is dan bijvoorbeeld geen werkbalk om te bewerken op de pagina om te bewerken) dan kan dat komen door een fout in JavaScript.
Open het console van uw webbrowser (meestal door het indrukken van F12), herlaad de pagina en kijk of er een foutbericht in het console getoond wordt.
Als het een foutmelding toont, dan kunt u met het zetten van $wgShowExceptionDetails
meestal meer informatie krijgen.
Soms is het probleem dat de systeemmap temp niet schrijfbaar is.
U kunt in dat geval ook $wgTmpDirectory
instellen, als u de rechten van de standaardmap 'temp' van het systeem niet kunt wijzigen.
Als u fouten krijgt als Uncaught SyntaxError: Unexpected token <
of Error: SyntaxError: syntax error (...) Source Code: <script (...)
, dan kan de reden zijn dat de hosting provider automatisch HTML-code toevoegt. Dat is voor tracking / reclame en in het script load.php . Dat script wordt door ResourceLoader gebruikt om de door MediaWiki gebruikte scripts en CSS te laden.
Doe een onderhoudsverzoek bij uw webhosting bedrijf om dit probleem op te lossen.
Elke pagina toont een fatale fout, in de Log staat meldingen als: "MagicWordArray::parseMatch: parameter not found"
Probeer de cache voor het vertalen opnieuw op te bouwen:
php maintenance/rebuildLocalisationCache.php
Overgenomen uit deze post.
Alle uploads mislukken, foutmelding: "The file you uploaded seems to be empty..."
Het kan veroorzaakt zijn door verkeerde rewrite rules bij het instellen van Korte URL's. Probeer ze uit te schakelen (en de bijbehorende configuratie variabelen van MediaWiki) om te kijken of dat het probleem oplost.
Een ander probleem kan zijn dat de webserver een limiet heeft hoeveel data de webserver in een keer kan ontvangen. Bekijk de handleiding uploads bestanden instellen voor enkele configuratie variabelen zoals de maximale bestandsgrootte. Als er mod_security of suhosin is geïnstalleerd, kan er een beperking zijn van de grootte van een bestand bij het uploaden, waardoor PHP helemaal niet merkt dat er een upload mislukt is.
Controleer ook de upload_tmp_dir configuratie directieve in php.ini, wees zeker dat het gebruikersaccount waaronder PHP draait op de map de goede schrijfrechten heeft.
Op Windows verwijst deze directieve vaak naar C:\Windows\TEMP
, die map jan soms niet benaderbaar zijn.
U kunt in dat geval een andere tijdelijke map instellen zoals C:\TEMP\ met de goede rechten.
Geef, om andere problemen uit te sluiten, tijdelijk alle rechten op die map (op Windows, voeg de lokale gebruikersgroep "Everyone" toe met volledige rechten), beperk daarna de rechten zoals benodigd als het uploaden lukt.
Als alle uploads mislukken met de foutboodschap "Het bestand dat u hebt geüpload lijkt leeg te zijn. Dit zou kunnen komen door een typefout in de bestandsnaam. Ga na of u dit bestand werkelijk bedoelde te uploaden." en in de Apache logs staan regels als:
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
Dit probleem komt voor bij oudere versies van PHP. Dit probleem is herhaald gemeld bij PHP 5.3.8 op SLES11 sp2. U zult de gebruikte versie van PHP op de webserver moeten (laten) upgraden.
WAMP/Apache op Windows: Enkele speciale pagina's zijn niet toegankelijk
Bij Windows installaties met Apache kunnen enkele Speciale pagina's niet toegankelijk zijn, een fout geven, in de log staat dan iets als:
[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
Dit kan meerdere fouten in PHP veroorzaken. Een er van is als de wiki is geïnstalleerd in een 'NTFS junction'. Als dat niet het probleem is, dan kan het upgraden van PHP helpen. (Meer informatie)
Bij het opslaan van een wijziging een '403 Forbidden error' of u gaat naar de hoofdpagina
Dit is een bekend probleem bij gedeelde hosts waar mod_security
is ingeschakeld.
Om te kijken of er een probleem is met mod_security, maak een eenvoudige testpagina en zorg dat er iets op getoond wordt.
Als de wijziging is opgeslagen maar andere wijzigingen niet, dan kan dat liggen aan mod_security.
Vraag uw webhosting bedrijf om dit geheel uit te schakelen of in ieder geval het deel van de regels dat effect heeft op uw bewerkingen.
Als u al bij een eenvoudige bewerking naar de hoofdpagina wordt doorgestuurd of naar dezelfde pagina zonder dat de bewerking wordt getoond, dan kan de oorzaak zijn u $wgServer
heeft gezet of een andere configuratie-variabele die het pad van het script index.php bepaald, er kunnen ook problemen zijn met de rewrite regels in de configuratie van uw webserver.
Op de inlog-pagina een melding dat de cookies zijn uitgeschakeld
Deze pagina is verouderd. |
You may get a message like MediaWiki gebruikt cookies voor het aanmelden van gebruikers.
Cookies zijn uitgeschakeld in uw browser.
Schakel deze optie in en probeer het opnieuw.
.
Als cookies zijn toegestaan in uw browser, dan kan het een van de volgende oorzaken hebben:
- U dient
$wgSessionsInMemcached
de waardetrue
te geven, maar MediaWiki kan niet verbinden met Memcached. Zet deze instelling uit of controleer de configuratie van Memcached. - Een verkeerde cookie configuratie. Configuratie variabelen met betrekking tot cookies zouden met hun eigen standaardwaarden moeten werken. Probeer deze niet te wijzigen.
- session_save_path() is op de server niet goed ingesteld of de server heeft op die map geen schrijfrechten.
- Als u een vorm van caching proxy voor de MediaWiki gebruikt, controleer dan of die geen cookie er uit filtert.
- session.referer_check() is verkeerd ingesteld. Meestal dient u dit veld leeg te laten.
Door het instellen van een debug log zou elke cookie getoond moeten worden die door MediaWiki wordt ontvangen, begin met het kijken of MediaWiki de cookies wel ontvangt.
MediaWiki werkt niet wanneer 'magic quotes' zijn ingeschakeld
MediaWiki-versie: | ≤ 1.23 |
MediaWiki-versie: | ≥ 1.24 |
Magische quotes was een functie in PHP die in versie 5.3 is verwijderd. Als u deze foutmelding krijgt, schakel dan de 'magic quotes' uit in de instellingen van uw server. Debuggen
Discussies: Thread:Project:Support_desk/Problems_with_installing_mediawiki, Topic:S79xdn9u15xw55vj, Topic:Sdpbmy9q9e0ttp6k, Topic:S7g4rybniat2i36e, Topic:S6vqwk0tysl6m8lc
Fout bij aanmaken miniatuur: File with dimensions greater than 12.5 MP
Probeer het opnieuw na het verhogen van $wgMaxImageArea
(geprobeerd op MediaWiki 1.26.2).
Internal Server Error bij het openen van elke afbeelding
Indien de afbeeldingen niet op de pagina getoond worden en het handmatig openen van de URL met een afbeelding geeft een "Internal Server Error" pagina, dan kan het probleem veroorzaakt worden het bestand .htaccess
in de map images
.
Dit configuratie-bestand bevat enkele 'rewrite rules' om te voorkomen dat oude Internet Explorer versies te maken kunnen krijgen 'cross site scripting'.
Enkele hosts (oa strato.de) voorkomt het niet toestaan van de directive RewriteOptions
in .htaccess, hierdoor treedt een fout op als er om een afbeelding wordt gevraagd.
Als het niet mogelijk is om de "rewrite rules" in het bestand .htaccess in te schakelen, dan moet u deze regels verwijderen of op commentaar zetten of dat bestand helemaal niet meer gebruiken.
post
Bewerkingen verschijnen niet in Recente wijzigingen, Recente wijzigingen worden niet bijgewerkt
Standaard is er een filter in Recente Wijzigingen om bewerkingen te verbergen die bots hebben gemaakt. Maak dit filter leeg en kijk of de bewerkingen verschijnen.
Als het inschakelen van de weergave van bewerkingen die door bots zijn gemaakt er niet voor zorgt dat ze worden weergegeven in Recente Wijzigingen, zit het probleem meestal in een van de geïnstalleerde extensies, waardoor een fout wordt veroorzaakt wanneer Recente Wijzigingen wordt bijgewerkt. Het updaten van Recente Wijzigingen bij het uitvoeren van een bewerking of andere actie wordt uitgesteld totdat de pagina naar de browser is verzonden. Een fout kan echter dergelijke updates verstoren en de fout wordt niet weergegeven aan de gebruiker. Om dergelijke fouten te detecteren, moet een foutopsporingslogbestand worden ingesteld (vergeet niet om het uit te schakelen zodra u de diagnose heeft voltooid) en sla een nieuwe bewerking op een pagina op. Als er een fout is, moet deze daar worden geregistreerd - maar let op dat het ook veel andere dingen zal registeren, probeer dan te zoeken naar "error" of "exception". Een fout kan een trace van de uitvoering geven, en het kan wijzen op een extensie die waarschijnlijk de oorzaak van de fout is.
Zorg ervoor dat uw extensies compatibel zijn met uw MediaWiki-versie.
Categorie pagina's, Speciale pagina met wat linkt hier na toe en bestandsgebruik worden niet bijgewerkt
Informatie over pagina's in een categorie, links naar andere wiki-pagina's en in pagina's ingebedde afbeeldingen worden gevolgd (tracked) met behulp van speciale tabellen.
Het updaten van zulke tabellen wordt niet direct gedaan na het opslaan van de wijziging, maar wordt vanwege de performance uitgesteld gedaan in een job queue.
Als de update te lang duurt, probeer $wgJobRunRate
aan te passen of probeer $wgRunJobsAsync
op false
te zetten in LocalSettings.php.
Dit kan in enkele installaties sinds MediaWiki 1.27 optreden (taak T142751).
Error: Could not open lock file for "mwstore://local-backend/local-public/./../image.png
Controleer de schrijfrechten op de map "images".
Bijvoorbeeld: chown -R www-data:www-data images
of chmod -R 777 images
.
Dit kan problemen geven als SELinux is ingeschakeld.
Notice: Did not find alias for special page 'Foo'. Perhaps no aliases are defined for it? [Called from SpecialPageFactory::getLocalNameFor in ...
U moet een alias bestand aanmaken. Voeg in uw bestand extension.json iets als dit toe:
"ExtensionMessagesFiles": {
"SpecialMyExt": "MyExt.alias.php"
},
"MessagesDirs": {
"MyExt": [
"i18n"
]
},
Het aan te maken alias bestand is iets als dit:
MyExt.alias.php
<?php
/**
* Aliases for Special:Foo
*
* @file
* @ingroup Extensions
*/
$specialPageAliases = [];
/** English (English) */
$specialPageAliases['en'] = [
'MyExt' => [ 'MyExt' ],
];
Controleer of de keys van de $wgMessagesDirs
items wel uniek zijn.
Keys in $wgExtensionMessagesFiles
die ook in $wgMessagesDirs
voorkomen, worden overgeslagen.
Warning: Invalid argument supplied for foreach() in ./includes/objectcache/SqlBagOStuff.php
Waarschijnlijk heeft u de wiki verplaatst en vergeten de database te importeren. De database is leeg.
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";
There seems to be a problem with your login session; this action has been canceled as a precaution against session hijacking. Please resubmit the form.
Volg de handleiding Manual:How to debug/Login problems .
Call to undefined method
Als een MediaWiki extensie deze foutmelding toont na het installeren van die extensie, kijk dan of de gedownloade versie of branch van die extensie overeenkomt met die versie of branch van uw MediaWiki installatie.
Unable to run external programs, proc_open() is disabled
De functie is uitgeschakeld in php.ini
.
Dit voorkomt dat ImageMagick gebruikt wordt om miniaturen aan te maken.
Neem contact op met uw hosting provider of probeer gd
te gebruiken in plaats van ImageMagick
door het instellen van $wgUseImageMagick
op false
.
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
Deze fouten kan meerdere oorzaken hebben. Een reden kan zijn dat de inhoud van user.user_touched leeg is of op een tijd in de toekomst staat.
Controleer of de tijd van de server goed is en wordt gesynchroniseerd. Controleer ook die kolominhoud en zet er geldige inhoud in. Bijvoorbeeld met dit SQL-statement:
UPDATE `user` SET user_touched='20241101052657'
WHERE HEX(
user_touched
)='0000000000000000000000000000';
-- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-- 28 nullen
Met YYYYMMDDHHMMSS wordt het formaat van de huidige datum/tijd aangegeven. Zie phab:T247751.
Lua error: Internal error
A database query error has occurred. This may indicate a bug in the software.
Als uw recent uw versie van MediaWiki heeft bijgewerkt of een extensie heeft bijgewerkt / geïnstalleerd, probeer dan het onderhoudsscript update.php uit te voeren. (Zie ook Handleiding:Upgraden .)
Als dat niet helpt, dan heeft u mogelijk een softwarefout gevonden. Probeer meer details te krijgen over de query die mislukt (Handleiding:Hoe te debuggen ) en rapporteer de fout .
$wgSecretKey key is insecure, generated with mt_rand()
Uw systeem ondersteunt geen /dev/urandom
zodat de key is aangemaakt met mt_rand()
.
Zie $wgSecretKey
.
MediaWiki vereist PHP 7.4.3 of hoger; u gebruikt PHP 7.3.17
Als de PHP-versie op uw webserver recent genoeg moet zijn, controleert u of u meerdere PHP-versies parallel hebt geïnstalleerd.
Maak een bestand met de naam info.php
met de single-line content <?php phpinfo();
en plaats dit bestand in de webdirectory.
Open het met uw webbrowser.
Het geeft de PHP-versie weer die door uw webserver wordt gebruikt.
PHP fouten
Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)
Verhoog de 'memory limit' van PHP in het bestand php.ini:
memory_limit = 64M ; Het maximum voor het geheugengebruik van een script (32MB)
MediaWiki-versie: | ≥ 1.16 |
U kunt de waarde voor $wgMemoryLimit
verhogen in LocalSettings.php.
MediaWiki-versie: | ≤ 1.15 |
ini_set('memory_limit', '20M');
Meer informatie over het instellen van limieten in PHP.
Fatal error: Class 'DOMDocument' not found in xxxxxxxx/Preprocessor_DOM.php on line nnn
Deze fout treedt op als PHP zonder DOM ondersteuning is gecompileerd of als de extensie DOM/xml ontbreekt.
- Installeer het goede
php-xml
package voor uw distributie. Bijvoorbeeld:sudo yum install php-xml
- U kunt ook de MediaWiki 'preprocessor' class wijzigen in 'preprocessor' class in LocalSettings.php (zie
$wgParserConf
)
$wgParserConf['preprocessorClass'] = 'Preprocessor_Hash';
Fatal error: Invalid opcode 153/1/8. in xxx/includes/cache/MessageCache.php on line nnn
Dit onderwerp lijkt aan te geven dat een PHP code accelerator niet overeenkomt met de geïnstalleerde versie van PHP of dat het verouderd is. Probeer de accelerator te upgraden. report
Warning: Cannot modify header information - headers already sent by (...)
Waarschijnlijk heeft uw tekstverwerker een byte order mark (BOM) toegevoegd bij het bewerken door u van een MediaWiki's PHP-bestand, ook andere inhoud voor de opening <?php
veroorzaakt dit probleem.
Dat gebeurt meestal met LocalSettings.php , maar bekijk de foutboodschap voor het betreffende bestand.
NB: in de meeste tekstverwerkers worden deze BOM's niet getoond.
Om de BOM te verwijderen, gebruik dan geen Windows Notepad, maar als het snel moet, gebruik het dan toch maar om te openen en sla het direct op met "Unicode (UTF-8 Without signature) - Codepage 65001" als bestandstype.
Strict Standards: date_default_timezone_get(): It is not safe to rely on the system's timezone settings.
Als u de Strikte Standaarden krijgt: fouten in de HTML uitvoer, dan is dat omdat de configuratie variabele error_reporting
van PHP is gezet op E_ALL
, maar vanaf PHP 5.4.0 is E_STRICT een onderdeel van E_ALL geworden.
E_STRICT zijn geen echte fouten, maar waarschuwingen over interoperabiliteit en toekomstige compatibiliteit van PHP-code. Ze moeten in productie-omgevingen niet getoond worden.
Voeg de instelling van uw tijdzone aan LocalSetting.php, met bijvoorbeeld:
$wgLocaltimezone = 'Europe/Berlin';
Het volgende werkt niet altijd. Het kan beter zijn om dit in de php.ini te zetten die aanwezig moet zijn in alle hierbij betrokken mappen.
U kunt E_STRICT fouten uitschakelen door de volgende regel code in LocalSettings.php te plaatsen, of als er een regel met de functie error_reporting
is, die te vervangen doorː
error_reporting( E_ALL & ~( E_STRICT | E_NOTICE ) );
U kunt het melden van PHP-fouten geheel uitschakelen door dit te gebruiken:
error_reporting( 0 );
Bekijk ook: Foutrapportage aanzetten in PHP.
Als niet werkt, controleer dan bij de start van uw LocalSettings.php file:
Als de fout optreedt bij de setup, kan de gegenereerde LocalSettings.php bovenin een foutboodschap bevatten (voorbeeld).
Als dat zo is, bewerk dan het bestand en verwijder alles voor "
" en zorg dat er niets, zelf geen spatie, voor <?php
staat.
<?php
Fatal Error: Cannot redeclare wfprofilein()
Dit kan gebeuren na het upgraden en er staat een bestand StartProfiler.php
in de root MediaWiki installatie map, waarschijnlijk omdat u profileren heeft aangezet in een eerdere installatie.
Dit probleem lost u op door het bestand te verwijderen.
Warning: Inaccessible files
Na uw actie kunt u PHP-waarschuwingen krijgen dat bepaalde bestanden niet benaderd kunnen worden.
De oorzaak wordt beschreven in taak T37472:
De kolom md_deps
in de tabel module_deps bevat absolute paden, die gebruikt worden voor de afbeeldingen en de LESS bestanden waar de CSS afhankelijk van is.
Deze paden kloppen niet meer als de wiki verplaatst is naar een andere map of een andere server.
Totdat het probleem is opgelost, kunt u dit opvangen door handmatig de verkeerde records in de tabel module_deps
aan te passen:
-- Records wijzigen in de tabel <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 );
Dit kan worden gebruikt om verkeerde delen van het pad te herstellen en daarmee het probleem te verhelpen.
MediaWiki-versies: | 1.17 – 1.26 |
Iets soortgelijks kan gebeuren als MediaWiki probeert de ResourceLoader berichten te lezen. In dit geval is de oplossing om de betreffende tabellen af te kappen:
-- Berichten gerelateerde cache afkappen
TRUNCATE TABLE `msg_resource`;
TRUNCATE TABLE `msg_resource_links`;
Fatal error: Uncaught Exception: extension.json does not exist
MediaWiki-versie: | ≥ 1.25 |
Als bij het installeren van een extensie deze fout optreedt, dan is de oorzaak meestal dat de extensie de interne PHP require_once
taalconstructie gebruikt in plaats van de nieuwere wfLoadExtension()
methode.
Installatie fouten
LocalSettings.php not readable
- Op een Linux machine, gebruik
chown
ofchgrp
om de bestandsrechten opLocalSettings.php
te verbeteren. - Op enkele Linux machines, schakel tijdelijk SELinux uit met het commando
sudo setenforce 0
.
Het installatieprogramma is 'unstyled' op IIS
Als de installer geen stijlen bevat en in plaats van het stylesheet, /mw-config/index.php?css=1
toont deze foutboodschap: "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"
Zorg er voor dat de webserver gebruiker, standaardnaam IUSR
, toegang heeft tot de map C:\Windows\TEMP.
Op zijn minst zijn de lees en schrijfrechten benodigd.
Error selecting database wikidb: 1044 Access denied for user 'username'@'localhost' to database 'wikidb'
U moet rechten verlenen op wikidb.*.
GRANT ALL ON wikidb.* TO 'username'@'localhost' IDENTIFIED BY 'password';
of als uw webserver op een andere box staat dan uw database-server, stel dan 'remote access' naar MySQL in en verleen de rechten anders
GRANT ALL ON wikidb.* TO 'username'@'192.168.0.x' IDENTIFIED BY 'password';
NB: Vervang 192.168.0.x met het IP van de webserver. Laat ook de aanhalingstekens (') staan.
Database returned error "1142: CREATE command denied to user 'username'@'localhost' for table 'user_properties' (localhost)"
Zoals hierboven, of tijdelijk gebruik van de gebruiker mysql root.
Could not find a suitable database driver!
PHP MySQL ondersteuning is niet geïnstalleerd/ingeschakeld. Zie https://php.net/book.mysqli.
Afhankelijk van uw besturingssysteem moet u mogelijk een extra package installeren.
Voorbeeld: voer op debian/ubuntu sudo apt install php-mysql
uit.
Fouten met kleine letters / hoofdletters in bestandsnamen
Als u een andere FTP-cliënt dan FileZilla gebruikt om bestanden te uploaden naar de server, stel dan zo nodig in dat de bestandsnamen gelijk blijven (kleine letters / hoofdletters). MediaWiki bestandsnamen zijn hoofdlettergevoelig.
Fouten door niet geheel geüploade bestanden
Het MediaWiki package bevat veel bestanden, verdeeld over tientallen mappen. Wees zorgvuldig met het uploaden. Als het uploaden wordt onderbroken dan kunnen er natuurlijk bestanden op de server ontbreken of onvolledig zijn geladen. Probeer dan uw upload nogmaals te doen.
403 Forbidden met symbolische links
Als uw webserver een "403 Forbidden error" pagina toont en u symbolische links gebruikt, controleer dan of uw Apache bestand httpd.conf
Options FollowSymLinks
heeft om symbolische toe te staan en dat elke map naar deze map het recht +x
heeft voor het uitvoeren van httpd door een gebruiker.
HTTP 500 Internal Error bij installatie
Als de webserver een "500 Internal Error" geeft bij het begin van het installatie-proces,dan moet u mogelijk de rechten op de map mw-config
veranderen in 755.
Als u de rechten voor de map 'config' heeft gewijzigd en nog steeds een fout krijgen dat schrijven niet mogelijk is, probeer dan de 'owner' te veranderen in 'apache'.
chown -R apache:apache /var/www/html/mediawiki/*
HTTP 500 Internal Error na installatie
Als u na het downloaden van de MediaWiki code van Git en na het installeren, een foutmelding "500 Internal Error" krijgt bij het benaderen van de wiki, ga dan naar de MediaWiki installatie map en voer de volgende commando's uit:
find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
SELinux
Het aantal Linux distributies die SELinux ('Security Extensions') ondersteunen neemt toe. Op dergelijke systemen zijn PHP-scripts niet in staat om te schrijven naar de map 'config', nadat u de normale bestandsrechten heeft toegekend. U zult ook het commando 'chcon' moeten gebruiken om het SELinux bestandstype te wijzigen.
Verplichte reclame op website host
Als u de MediaWiki software uitvoert op een gratis website die het gebruik van banners of advertenties verplicht, dan kan dat zorgen dat MediaWiki niet werkt, er komen dan alleen lege pagina's na de banner met reclame. Probeer dan in overleg met uw webhost hun manier van reclame maken aan te passen, compatibel met MediaWiki of kies een andere host.
Debian, Apache2 en PHP
Als u MediaWiki gebruikt op Debian met Apache2 en PHP5, indien u problemen heeft bij de connectie met MySQL (u krijgt bijvoorbeeld de foutboodschap: (Can't contact the database server: MySQL functions missing, have you compiled PHP with the --with-mysqli option?)), probeer het dan eens nadat u de regel
in het bestand /etc/php5/apache2/php.ini actief heeft gemaakt.
extension=mysqli.so
Als dat niet werkt, probeer het volgende...
Controleer of die MySQL-module voor PHP is geïnstalleerd:
dpkg --list | grep php-mysql
Als u de php5-mysql module moet installeren, voer in:
apt-get install php-mysql
Herstart daarna Apache2:
/etc/init.d/apache2 restart
'user_password' can't have a default value
Controleer of MySQL niet in een strict mode wordt uitgevoerd.
Tabel prefix ontbreekt
Als u een hostingdienst gebruikt, dan kunnen de database-naam en de database-gebruikersnaam een extra prefix hebben (normaal wordt de gebruikersnaam toegekend door de hostingdienst). Een voorbeeld, als u een database db01 met gebruikersnaam u01 heeft aangemaakt en uw userid is ocom, dan moet u de database-naam en database-gebruikersnaam invoeren als ocom_db01 en ocom_u01.
MySQL-connectie mislukt met fout [2013] of fout [2002]
Indien u de fout: failed with error [2013] Lost connection to MySQL server during query. of de fout failed with error [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13). krijgt, dan kan dat liggen aan het gebruiken van een verkeerde database hostnaam of een probleem met de rechten op het bestand mysql.soc of op de map.
Als u een hostingdienst gebruikt, controleer dan of u wel de goede hostnaam gebruikt voor de database.
In de MySQL manual wordt aangegeven hoe u moet omgaan met dit soort gebruikelijke fouten. Bezoek de pagina's voor links naar de documentatie voor andere versies van MySQL.
Om te controleren of MySQL is geïnstalleerd, probeer op de commando-regel het commando mysql
; indien MySQL ontbreekt: instructies.
UNIX-utility binaries ontbreken
Fouten zijn o.a.:
- GNU diff3 niet gevonden
- Git versiecontrole software niet gevonden
- ImageMagick niet gevonden
PHP moet toegang hebben tot /usr/bin.
In php.ini (mogelijk /etc/php/php.ini
), voeg :/usr/bin/
toe aan open_basedir configureer variabele als volgt:
open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/var/www/:/usr/bin/
Om GIT uit te schakelen: zet $wgGitBin
op een pad dat is toegestan maar niet bestaat.
$wgGitBin = "";
"Forbidden: You don't have permission to access /mediawiki/ on this server."
Dit is meestal een probleem met de configuratie van uw webserver software en staat los van MediaWiki. Voorbeeld
Te veel doorverwijzingen (ERR_TOO_MANY_REDIRECTS)
Wanneer dit op elke pagina gebeurt, wordt dit meestal veroorzaakt door een verkeerde Handleiding:Korte URL configuratie, meestal door een fout bij het doorverwijzen.
Dit kan ook gebeuren wanneer $wgForceHTTPS
is ingesteld op true
, en MediaWiki het protocol dat de client gebruikt, op een of andere manier niet goed detecteert en een doorverwijzing naar https blijft sturen:
Dit kan gebeuren wanneer MediaWiki achter een omgekeerde proxy is ingesteld die de HTTP-header van X-Forwarded-Proto
niet op https
stelt.
Update/Upgrade fouten
<span id="Missing_rc_timestamp
_field_of_recentchanges
_table._Should_not_happen.">
Missing rc_timestamp
field of recentchanges
table. Zou niet moeten gebeuren.
Kan bijvoorbeeld gebeuren bij het upgraden van versie 1.27. Als de database leeg is, dan kunt u dit bericht zien. Zie phab:T236671.
Dit kan gebeuren bij het niet specificeren van dezelfde $wgDBprefix
als de originele installatie, daardoor kan MediaWiki zijn tabellen niet vinden.
Controleer de bestaande tabellen in de database en kijk of ze een gemeenschappelijke prefix hebben. Wijzig die instelling daarop aan.
Een andere oorzaak kan zijn dat de database leeg is. Herstel de database uit een back-up en ga verder met het migreren.
"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
Zie Parsoid/Troubleshooting en Probleemoplossing .
Referenties