Mises en cache des routes avec Cloudflare dans Laravel

Le package Cloudflare Cache pour Laravel fournit des itinéraires pouvant être mis en cache, ce qui vous permet de traiter efficacement des millions de requêtes pour des pages statiques. Vous pouvez définir un groupe de routes pouvant être...

Mises en cache des routes avec Cloudflare dans Laravel

Le package Cloudflare Cache pour Laravel fournit des itinéraires pouvant être mis en cache, ce qui vous permet de traiter efficacement des millions de requêtes pour des pages statiques. Vous pouvez définir un groupe de routes pouvant être mises en cache avec le routeur Laravel, y compris des balises. Ce package permet de commencer facilement la mise en cache avec Cloudflare à l’aide de la méthode suivante : Route::cache()

Route::cache(tags: ['tag1', 'tag2'], ttl: 600)->group(function () {
    Route::get('/content_with_tags', function () {
        return 'content';
    });
});
 
Route::cache(tags: ['staticPages'])->group(function () {
    //
});

Ce package vous fournit des API pour purger tout le contenu, des URL spécifiques, des préfixes/URL balisées (entreprise), etc. À titre d’exemple, supposons que vous souhaitiez mettre en cache des articles (Posts) avec Cloudflare et purger le cache chaque fois que l’article est mis à jour :

<?php
 
namespace App\Http\Controllers;
 
use App\Http\Requests\UpdatePostRequest;
use App\Models\Post;
use Yediyuz\CloudflareCache\Facades\CloudflareCache;
 
class PostController extends Controller
{
    public function update(Post $post, UpdatePostRequest $request)
    {
        $post->update($request->validated());
 
        CloudflareCache::purgeByUrls([
            route('post.show', $post->id)
        ]);
 
        return back()->with('message', 'Post updated and url cache purged');
    }

Vous pouvez en savoir plus sur ce package, obtenir des instructions d’installation complètes et consulter le code source sur GitHub.

Steven KOULO
Steven KOULODéveloppeur Fullstack

Besoin d'un développeur pour votre prochain projet ? Je suis disponible pour des missions freelance.

Me contacter