Naar hoofdinhoud gaan
In oktober 2026 kwamen er functies bij om te bepalen hoe requests worden uitgedrukt, waar databasereads naartoe gaan en hoe geplande taken op meerdere servers draaien. Laravel Cloud maakte het versturen van mail en het instellen van geplande commando’s eenvoudiger, en in Forge zijn PHP-beveiligingsupdates en mislukte provisioning makkelijker te volgen. Deze pagina is een maandelijks overzicht op basis van de officiële blogpost “Laravel October Product Updates” van 4 november en de oktoberitems in de officiële Framework-changelog. De primaire bronnen zijn op 7 november 2026 gecontroleerd, en het Framework-deel behandelt alleen Laravel 13. Releases uit november zijn niet opgenomen. Bronnen:

Laravel Framework

Releases in oktober

Naast de belangrijkste nieuwe functies in de officiële changelog zijn de datums en versies gecontroleerd in de release notes. Hieronder worden de negen items uit de officiële changelog uitgebreid besproken. Voor kleine fixes en wijzigingen in afhankelijkheden zie je de afzonderlijke release notes.

Zoekopdrachten met een request body definiëren via QUERY-routes

In v13.35.0 is Route::query() toegevoegd, dat de HTTP-methode QUERY ondersteunt. Je kunt routes definiëren die zoekcriteria in de request body ontvangen in plaats van in de GET-querystring.
Ook Route::any() matcht QUERY-requests, en de routelijst herkent deze methode. De SearchProductsController hierboven staat voor een invokable controller in je applicatie die de zoekfunctie implementeert.
QUERY-routes in de middlewaregroep web vallen onder CSRF-verificatie. Ga er niet van uit dat je de verificatie zoals bij GET kunt overslaan omdat het een zoekopdracht is. Stuur het CSRF-token mee.
Primaire bronnen: Register QUERY Routes, officiële Laravel 13 routing.md. Gerelateerde pagina’s: Routing, CSRF-bescherming

Verouderde reads ook in latere requests na een write vermijden

Bij een database met gescheiden lezen en schrijven kan een read direct na een update naar een read replica gaan die nog niet gesynchroniseerd is. De bestaande optie sticky geldt alleen binnen hetzelfde request. De middleware PreventStaleDatabaseReads uit v13.38.0 beschermt daarnaast gedurende een bepaalde periode ook de volgende requests van dezelfde sessie. Importeer in bootstrap/app.php de klasse Illuminate\Foundation\Http\Middleware\PreventStaleDatabaseReads en voeg hem in de callback van withMiddleware() toe met $middleware->web(append: [PreventStaleDatabaseReads::class]);. De functie wordt niet automatisch ingeschakeld. De middleware legt het tijdstip van writes naar de standaard databaseverbinding vast in de sessie. Standaard stuurt hij reads op die verbinding gedurende 2 seconden na een write naar de write-database. Je wijzigt de periode door in plaats van de klasse bijvoorbeeld PreventStaleDatabaseReads::for(5) te registreren. Omdat hij de sessie gebruikt, moet hij na StartSession draaien. Hij schakelt geen reads van andere sessies of andere databaseverbindingen om en detecteert ook niet wanneer de replica klaar is met synchroniseren. Primaire bronnen: Avoid Stale Reads After Database Writes, officiële Laravel 13 database.md. Gerelateerde pagina’s: Database, Sessie

Alleen voor specifieke bewerkingen uit de write-database lezen

Connection::usingWritePdo(), ook toegevoegd in v13.38.0, schakelt de leesbestemming van de verbinding alleen tijdens het uitvoeren van de callback om naar de write-database. Dit is handig wanneer je in de applicatie expliciet wilt aangeven welke reads kritiek zijn, in plaats van een hele sessie te beschermen.
Het geldt ook voor Eloquent-queries en relatiequeries die dezelfde verbinding gebruiken. Het geeft het resultaat van de callback terug en herstelt de vorige leesinstelling ook bij een exception, zodat de omschakeling niet doorlekt naar latere code. Primaire bronnen: Temporarily Read from the Write Database Connection, officiële Laravel 13 database.md

Geplande taken in één keer instellen op uitvoering op één server

Om vergeten onOneServer()-aanroepen te verminderen wanneer de scheduler op meerdere servers draait, is in v13.35.0 Schedule::alwaysOnOneServer() toegevoegd. Roep het aan in boot() van AppServiceProvider om het in één keer op alle betreffende geplande taken toe te passen.
Deze standaard werkt pas wanneer je hem aanroept. Geplande closures zonder naam vallen erbuiten en blijven op elke server draaien.
onOneServer() vereist een centrale cache die alle servers delen. De drivers die de officiële documentatie noemt zijn database, memcached, dynamodb en redis. Alleen de instelling toevoegen levert nog geen lockinfrastructuur tussen servers op.
Primaire bronnen: Run Scheduled Tasks on One Server by Default, officiële Laravel 13 scheduling.md. Gerelateerde pagina: Taakplanning

Dispatches in fakes controleren aan de hand van eigenschappen

Sinds v13.35.0 accepteren de fakes van Queue, Bus, Event en Notification een array met verwachte eigenschappen. Je hoeft niet meer elke keer een callback te schrijven alleen om attributen te vergelijken. Met bijvoorbeeld een job ShipOrder die een publieke eigenschap order heeft en een in de test voorbereide $order, controleer je het zo:
Alle opgegeven eigenschappen moeten overeenkomen. Waarden worden strikt vergeleken, maar Eloquent-modellen worden vergeleken met is(), zodat ook een andere instantie van hetzelfde model overeenkomt. Fakes controleren de dispatch, niet het resultaat van het uitvoeren van de job zelf. Primaire bronnen: Assert Fake Dispatches by Their Properties, officiële Laravel 13 queues.md. Gerelateerde pagina’s: Queues, Mocking

Geheugenlimiet van workers als percentage opgeven

Sinds v13.35.0 accepteert --memory van queue:work een percentage van PHP’s memory_limit. Je stemt de stopdrempel van de worker af op de PHP-instelling zonder voor elke omgeving een vaste MB-waarde opnieuw te berekenen.
Het is geen percentage van het totale geheugen van de host of container. Als PHP’s memory_limit onbeperkt is (-1), gebruik dan een MB-waarde in plaats van een percentage. Het herstarten van een worker die bij de drempel stopt, laat je over aan een procesmonitor zoals Supervisor. Primaire bronnen: Set Queue Worker Memory Limits as Percentages, officiële Laravel 13 queues.md

Markdown teruggeven met een eigen Content-Type

In v13.35.0 is markdown() aan de response factory toegevoegd. Het geeft een Markdown-body terug als text/markdown, en je kunt ook een statuscode en extra headers opgeven.
Je kunt het combineren met logica die het responseformaat kiest, zoals wantsMarkdown(). Het zet Markdown niet om naar HTML. Het is een API om Markdown zelf als response aan te bieden. Primaire bronnen: Return Markdown Responses, officiële Laravel 13 responses.md. Gerelateerde pagina: Responses

Analysequeries in OLAP-modus uitvoeren met Vitess

In v13.36.0 zijn isVitess() en olap() aan MySQL-verbindingen toegevoegd. Je kunt detecteren of je Vitess of PlanetScale gebruikt en analysequeries uitvoeren met de OLAP-workload.
De workload wordt op zowel de lees- als de schrijfverbinding ingesteld en aan het einde van de callback teruggezet naar OLTP. Ook bij exceptions wordt hij hersteld, en op een gewone MySQL-verbinding zonder Vitess draait de callback zonder de workload te wijzigen. Primaire bronnen: Use OLAP Workloads with Vitess Connections, officiële Laravel 13 database.md

Bestaande validatieregels vinden via builders

In v13.36.0 zijn Rule-buildermethoden toegevoegd voor veel regels die voorheen als string werden opgegeven. Methoden zoals requiredWith(), acceptedIf(), regex() en timezone() zijn makkelijker te vinden via de autocompletion van je IDE, en je kiest de schrijfwijze zonder het bestaande validatiegedrag te veranderen.
De methodenamen zijn in camelCase. Je kunt ze mengen met stringregels, dus je hoeft bestaande regels niet in één keer te herschrijven. Primaire bronnen: Discover More Validation Rules Through Builders, officiële Laravel 13 validation.md. Gerelateerde pagina: Validatie

Laravel Cloud

De officiële maandelijkse blog stelt de volgende drie punten voor. Primaire bronnen: Laravel October Product Updates — Laravel Cloud, Laravel Cloud changelog. Gerelateerde pagina: Kennismaking met Laravel Cloud

Laravel Forge

  • Meldingen over PHP-beveiligingsupdates: Forge toont per server welke versies getroffen zijn door de PHP-beveiligingsreleases van oktober en of er gecorrigeerde versies beschikbaar zijn. Met Recheck versions controleer je opnieuw welke versie daadwerkelijk geïnstalleerd is. De weergave opnieuw controleren en PHP updaten zijn aparte handelingen.
  • Omgaan met mislukte provisioning: servers die niet afgerond kunnen worden, verschijnen als mislukt, met een melding, aanwijzingen voor de volgende stap en een verwijderactie. Ook de installatie van PHP en Nginx wordt opnieuw geprobeerd voordat de mislukking vaststaat.
De maandelijkse blog vermeldt ook de publicatie van een post-mortem over de PHP- en Node.js-beveiligingsrespons in oktober. Voor de genomen maatregelen en updatebeslissingen raadpleeg je de officiële berichten. Primaire bronnen: Laravel October Product Updates — Laravel Forge, Laravel Forge changelog

Gerelateerde artikelen

Updates van september 2026

Een terugblik op AI-providers bouwen tijdens runtime, zoekextensies, Mercure en geïsoleerde preview-omgevingen in Cloud.

Databasegids

Bekijk lees-/schrijfscheiding en de basis van databaseverbindingen.
Laatst gewijzigd op 7 november 2026