logo

Extra Block Types (EBT) - Nieuwe Layout Builder ervaring❗

Extra Block Types (EBT) - gestileerde, aanpasbare bloktypes: Slideshows, Tabs, Cards, Accordions en vele andere. Ingebouwde instellingen voor achtergrond, DOM Box, javascript-plugins. Ervaar vandaag al de toekomst van layout building.

Demo EBT-modules Download EBT-modules

❗Extra Paragraph Types (EPT) - Nieuwe Paragraphs ervaring

Extra Paragraph Types (EPT) - analoge op paragrafen gebaseerde set modules.

Demo EPT-modules Download EPT-modules

Scroll
07/10/2025, by Ivan

Sommige afzonderlijke modules kunnen extra vereisten hebben voor PHP-extensies en configuraties, naast die hieronder worden vermeld, dus lees altijd de documentatie van de module.

Ondersteunde PHP-versies

PHP-versie Ondersteund door Drupal Aanbevolen voor Drupal
5.5  Nee (opmerking 2 hieronder)  Nee
5.6  Nee (opmerking 2 hieronder)  Nee
7.0 Ja, 7.0.8 met Drupal 8.7.0 (opmerking 2 hieronder)  Nee
7.1 Ja  Nee
7.2 Ja, sinds Drupal 8.5.0  Ja
7.3 Ja, sinds Drupal 8.6.4 (opmerking 1 hieronder)  Ja
7.4 Ja, sinds Drupal 8.8.3  Ja
8.0  Nee; zie taak 3109885

1) Lees de wijzigingsmelding voor meer informatie over PHP 7.3-ondersteuning.
2) Lees de wijzigingsmelding voor meer informatie over het beëindigen van de ondersteuning van PHP 5.

Wat betekent de "aanbevolen" PHP-versie?

Drupal werkt op alle ondersteunde PHP-versies. De aanbevolen PHP-versies zijn de beste keuze om een Drupal-site te bouwen, omdat ze langer worden ondersteund. PHP 7 biedt ook aanzienlijke prestatie- en cacheverbeteringen.

PHP 5.5, 5.6 en 7.0 hebben hun officiële einde van levensduur bereikt aan het einde van 2018, en PHP 7.1 bereikte het einde van levensduur op 1 december 2019. (Zie PHP: ondersteunde versies voor meer informatie.) Drupal 8 stopte de ondersteuning voor PHP 5.5 en 5.6 in mei 2019 en nieuwere versies vereisen 7.0.8 of hoger. We raden aan om ten minste te upgraden naar PHP 7.2. (Ubuntu 18.04 wordt geleverd met PHP 7.2, en Debian stable heeft 7.3.)

Opmerking: dit heeft geen invloed op Drupal 7, dat compatibel blijft met PHP 5.2.4 en hoger. Een afzonderlijke aankondiging zal worden gepubliceerd als en wanneer dit verandert – zie Drupal 7 PHP-vereisten.

Vereiste PHP-extensies

De extensies die door de Drupal Core worden gebruikt, zijn gedefinieerd in het bestand composer.json van de kern – zie bijvoorbeeld het bestand voor Drupal 8.7.x. Kijk in de sectie “require” en naar sleutels die beginnen met “ext-”.

Opmerking: het toevoegen van een PHP-extensie aan je systeem (ten minste in Linux en Mac) betekent dat je het juiste PHP-pakket installeert via de pakketbeheerder. Gewoonlijk heet het pakket voor de extensie Foo “php-foo” of “php7-foo”, maar dat is niet altijd het geval. Sommige extensies maken deel uit van het hoofdpakket van PHP en zijn daarom standaard ingeschakeld.

Database-extensies

De PHP Data Objects (PDO)-extensie moet zijn ingeschakeld voor een juiste installatie en werking van Drupal 8. De PDO-versie van PECL is niet compatibel met Drupal 8 en kan niet worden gebruikt. Daarnaast moet de PHP-extensie voor de databaseconnector die je gebruikt, geïnstalleerd en geactiveerd zijn.

Momenteel worden de volgende databaseconnectors door Drupal ondersteund: mysql (originele MySQL-extensie), mysqli (verbeterde connector voor nieuwere MySQL-installaties) en pgsql (voor PostgreSQL). Opmerking: PHP 5.x bevat de mysql-extensie niet langer standaard. Lees de bovenstaande links om de gekozen connector te installeren en te activeren. Over het algemeen, als je PDO met MySQL-ondersteuning installeert, is de juiste connector al geselecteerd.

XML-extensie

De PHP XML-extensie (voor blog-API’s, Drupal-modules en Ping). Deze extensie is standaard ingeschakeld in standaard PHP-installaties; de Windows-versie van PHP heeft ingebouwde ondersteuning voor deze extensie. Het inschakelen van de XML-extensie schakelt ook PHP DOM in. DOM is nu een systeemvereiste.

Afbeeldingsverwerkingsbibliotheek

Een afbeeldingsbibliotheek voor PHP, zoals de GD-bibliotheek, is een verplichte extensie in Drupal 8 en vereist voor afbeeldingsmanipulatie (zoals het wijzigen van afbeeldingsgroottes, afbeeldingsmodules en caching). ImageMagick wordt ook ondersteund voor basisbeeldmanipulaties in de Drupal-kern, maar heeft veel minder ondersteuning van bijgevoegde modules.

OpenSSL

De PHP OpenSSL-extensie wordt aanbevolen, zodat Drupal uitgaande HTTPS-verzoeken kan uitvoeren. Sommige platforms bieden een afzonderlijk OpenSSL-pakket, zoals php7-OpenSSL.

Er wordt ook gewerkt aan het verifiëren van updates via HTTPS in de Update Manager-module, wat deze aanbeveling nog belangrijker of zelfs verplicht zou kunnen maken. Zie taak #1538118: Update status verifieert niet de identiteit of authenticiteit van de releasegeschiedenis-URL en https://groups.drupal.org/node/506128.

JSON

Drupal 8 vereist PHP dat is gecompileerd met JSON-ondersteuning. JSON-ondersteuning wordt meestal meegecompileerd als onderdeel van de PHP-kern, maar als je fouten krijgt zoals:

PHP Fatal error: Call to undefined function Drupal\\Component\\Serialization\\json_encode() in ... core/lib/Drupal/Component/Serialization/Json.php

probeer dan de JSON-extensie toe te voegen.

cURL

De PHP cURL-extensie is vereist voor de SimpleTest-module in Drupal 8, evenals voor de Aggregator en sommige aanvullende modules. In veel Linux-distributies en ontwikkelstacks is dit standaard ingeschakeld, maar als jouw systeem dit niet in php.ini heeft ingeschakeld (meestal op Windows) of niet heeft geïnstalleerd via de pakketbeheerder (meestal op Linux), moet je dit handmatig doen.

Mbstring

De PHP mbstring-extensie biedt speciale multibyte stringfuncties die worden gebruikt voor het installeren van Drupal in andere talen dan Engels, en voor meertalige sites in Drupal. Het helpt bij het werken met multibyte-encoderingen in PHP en ondersteunt Unicode-gebaseerde encoderingen zoals UTF-8 of UCS-2.

PHP-configuratie-instellingen

Geheugenvereisten

De PHP-geheugenvereisten kunnen sterk variëren afhankelijk van de modules die op je site zijn ingeschakeld. De minimaal vereiste hoeveelheid geheugen is 64 MB.

Waarschuwingen worden weergegeven als de PHP-configuratie niet aan deze vereisten voldoet. Hoewel deze waarden voldoende kunnen zijn voor een standaardinstallatie van Drupal, kan een productieomgeving met meerdere actieve modules aanzienlijk meer geheugen vereisen. Gewoonlijk gebruiken productieomgevingen 128 MB of 256 MB. Sommige installaties hebben mogelijk nog meer nodig, vooral bij multimedia-implementaties. Als je een hostingservice gebruikt, is het belangrijk om ervoor te zorgen dat je host voldoende geheugen kan bieden voor de set modules die je gebruikt of in de toekomst wilt gebruiken. (Zie de pagina PHP-geheugenlimieten verhogen in de FAQ over probleemoplossing voor meer informatie over het wijzigen van geheugenlimieten.)

.htaccess-instellingen

Sommige geheugeninstellingen bevinden zich in het standaard .htaccess-bestand dat met Drupal wordt meegeleverd, zodat je ze niet handmatig hoeft in te stellen. Let er echter op dat het instellen van PHP-configuratieparameters via .htaccess alleen werkt onder de volgende voorwaarden:

Met Apache (of een compatibele webserver)
Als het .htaccess-bestand daadwerkelijk wordt gelezen, d.w.z. als AllowOverride All is ingeschakeld in de hoofdconfiguratie van Apache (meestal httpd.conf)
Als PHP is geïnstalleerd als een Apache-module
In sommige gedeelde hostingomgevingen is de toegang tot deze instellingen beperkt. Als je deze wijzigingen niet zelf kunt aanbrengen, vraag dan je hostingprovider om ze voor je te configureren.

Andere interfaces

Zie de PHP-handleiding om te leren hoe je configuratie-instellingen kunt wijzigen voor andere PHP-interfaces.

Xdebug

Als je Xdebug gebruikt:

Instelling: xdebug.show_exception_trace = 0
Reden: dit kan leiden tot een crash van de Drupal-installatie.

Gebruik van Xdebug met Drupal 8:

Instelling: xdebug.collect_params = ?
Reden: een te hoge waarde van xdebug.collect_params voorkomt dat Drupal 8 wordt geïnstalleerd of correct werkt.

Instelling: xdebug.max_nesting_level = 256
Reden: het standaardwaarde van max_nesting_level (100 in versies van xdebug < 2.3) veroorzaakt fouten op sommige pagina’s.

PHP uit verschillende bronnen

Drupal is ontworpen om te werken met PHP dat wordt gedistribueerd via PHP.net. Er wordt alles aan gedaan om compatibiliteit te behouden met PHP-versies van andere bronnen, maar dit gebeurt op basis van "best effort". Met name Suhosin is bekend dat het bepaalde functionaliteit verstoort, en sommige besturingssystemen splitsen kerncomponenten in andere pakketten.

PHP-vereistendetails

Zie de pagina phpinfo() op Drupal.org om te leren hoe je Phpinfo kunt gebruiken om gedetailleerde informatie over je systeem te krijgen. Phpinfo vertelt je bijvoorbeeld of je al een database hebt geïnstalleerd en welke versies van PHP, MySQL enz. er draaien. Het geeft ook weer welke PHP-variabelen zijn ingesteld en nog veel meer