PHP configuratie
PHP is een veel gebruikte scripttaal voor het maken op webservers van dynamische webpagina's. PHP's syntaxis, mogelijkheden en wijze van uitvoering lijken op Perl; scripts worden geladen door een "interpreter", gecompileerd naar bytecode en daarna uitgevoerd. De PHP interpreter kan worden uitgevoerd via de commando-regel, als CGI, maar wordt eigenlijk altijd als proces uitgevoerd, meestal als Apache module.
MediaWiki compatibiliteit
Bekijk deze lijst om te zien welke PHP-versies gebruikt kunnen worden bij uw versie van de MediaWiki.
Installatie
Lees https://php.net/install.
Compile-time optie
Verplicht
Voor MediaWiki zijn de volgende extensies verplicht:
- Perl Compatibel Reguliere expressies
- Session
- Standaard PHP-bibliotheek
- Document Object Module
- iconv karakterset conversie bibliotheek
- JSON (alternatief: pecl-json-c fork)
- mbstring multibyte tekst ondersteuning
- fileinfo MIME type detectie
- intl Unicode normalisatie
- calendar Ondersteuning voor conversie tussen kalenders
- Minstens een database-driver:
MySQL en PostgreSQL via PDO worden niet ondersteund
Perl Compatibel Reguliere expressies, Session, Standaard PHP-bibliotheek en JSON zijn standaard ingeschakeld; Perl Compatibel Reguliere expressie en Standaard PHP-bibliotheek zijn, sinds PHP 5.3, niet uit te schakelen.
Optioneel
MediaWiki heeft ook een aantal optionele functies van PHP nodig, die (op compileertijdstip) ingeschakeld moeten zijn:
- zlib compressie bibliotheek, optioneel voor compressie van de file cache
- sockets ondersteuning voor network communicatie, bij gebruik van memcached
- exif-functies om EXIF gegevens van geüploade afbeeldingen (
$wgShowEXIF
) te tonen.
Voorbeeld
Wij werken met deze opties voor het compileren:
'./configure' \ '--with-mysqli=mysqlnd' \ '--with-pdo-mysql=mysqlnd' \ '--with-apxs2=/usr/sbin/apxs2' \ '--with-zlib' \ '--with-ldap' \ '--with-gd' \ '--with-jpeg-dir' \ '--with-iconv-dir' \ '--enable-mbstring'
Deze opties doen het volgende:
- --with-mysqli=mysqlnd
- Voeg MySQLi (MySQL verbeterde) ondersteuning toe. De MySQL-natieve driver wordt gebruikt wanneer de waarde
mysqlnd
is. - --with-pdo-mysql=mysqlnd
- PDO: MySQL-ondersteuning. De natieve driver wordt gebruikt wanneer de waarde
mysqlnd
is. - --with-apxs2=/usr/sbin/apxs2
- dit is verplicht als u mod_php wilt builden. APXS is voor het configureren van het compileren van een Apache module. U moet het pad voor uw systeem mogelijk aanpassen of verwijderen.
- --with-zlib
- Staat PHP toe om gezipte bestanden te lezen en te schrijven en gecomprimeerde gegevens naar Apache te sturen (het laatste deel over Apache is vast wat verkeerd onder woorden gebracht)
- --with-ldap
- Belangrijk als u de wiki gebruikers met LDAP wilt verifiëren
- --with-gd
- Deze optie is nodig als u afbeeldingen wilt verwerken in PHP, gebruik anders ImageMagick. Bij deze opties moeten verschillende bibliotheken zijn geïnstalleerd
- --with-jpeg-dir
- Lijkt overbodig
- --with-iconv-dir
- Lijkt overbodig
- --enable-mbstring
- Zorgt voor ondersteuning van multibyte teksten. Het is optioneel, maar als het nodig is en het is er niet dan wordt er teruggevallen op langzamere code.
Opcode caching
Vanwege de grote omvang van de code van MediaWiki, is het raadzaam om een systeem te gebruiken dat gecompileerde scripts in de cache bewaard; hiervoor kan de PHP-extensie opcache worden gebruikt. In PHP is deze extensie meestal al geïnstalleerd en ingeschakeld.
Runtime configuratie (php.ini)
Enkele instellingen in php.ini beïnvloeden het gedrag van MediaWiki en andere zijn er incompatibel mee.
- magic_quotes_gpc
- Deze opties voegen quotes toe aan gegevens in
$_GET
,$_POST
en$_COOKIES
. MediaWiki kan met deze ingeschakelde optie werken, maar werkt dan wat langzamer omdat het de quotes gaat verwijderen. - magic_quotes_runtime
- Deze optie maakt de gegevensinvoer onvoorspelbaar door quotes toe te voegen in bijvoorbeeld geopende bestanden, opgehaalde databasegegevens, enz. MediaWiki kan niet worden geïnstalleerd als deze optie ingeschakeld is.
- magic_quotes_sybase
- hetzelfde als magic_quotes_runtime
- mbstring.func_overload
- Deze optie veroorzaakt fouten en kan gegevens verminken; MediaWiki kan niet worden geïnstalleerd als deze optie ingeschakeld is.
- zend.ze1_compatibility_mode
- Deze optie veroorzaakt grote fouten; MediaWiki kan niet worden geïnstalleerd als deze optie ingeschakeld is.
- memory_limit
- MediaWiki heeft memory nodig om te kunnen werken. De limiet is minimaal 20 MB, maar MediaWiki werkt beter bij minstens 50 MB.
- disable_functions
- Om GNU diff3 en git te kunnen vinden bij het installeren moet deze optie niet passthru bevatten
- post_max_size
- Als u de foutmelding "Sommige onderdelen van het bewerkingsformulier hebben de server niet bereikt. Controleer of uw bewerkingen intact zijn en probeer het opnieuw." krijgt, dan zou dat kunnen komen door het gebruik van de prefix "MB" prefix, in plaats van "M".
Grootte van afbeelding aanpassen
ImageMagick of de GD PHP-module kan worden gebruikt voor het maken van miniaturen van afbeeldingen. Zie Miniatuur van afbeelding