Как сделать ваш Laravel-сайт супер быстрым с помощью кэширования страниц
1. Установите пакет:
composer require silber/page-cache
2. Добавьте посредника кэширования в http/kernel.php:
'page-cache' => \Silber\PageCache\Middleware\CacheResponse::class,
3. Примените посредника к маршрутам:
Route::get('/post/{slug}', 'SiteController@post')->middleware('page-cache');
4. Настройте .htaccess:
# Serve Cached Page If Available...
RewriteCond %{REQUEST_URI} ^/?$
RewriteCond %{DOCUMENT_ROOT}/page-cache/pc__index__pc.html -f
RewriteRule .? page-cache/pc__index__pc.html [L]
RewriteCond %{DOCUMENT_ROOT}/page-cache%{REQUEST_URI}.html -f
RewriteRule . page-cache%{REQUEST_URI}.html [L]
RewriteCond %{DOCUMENT_ROOT}/page-cache%{REQUEST_URI}.json -f
RewriteRule . page-cache%{REQUEST_URI}.json [L]
5. Очистка кэша:
6. Автоматическая очистка при обновлении модели:
<?php namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Artisan;
class Post extends Model
{
public static function boot()
{
parent::boot();
static::updated(function ($model) {
Artisan::call("page-cache:clear $model->slug");
});
}
}
Кэширование страниц значительно улучшает производительность вашего сайта за счет снижения времени отклика и нагрузки на сервер. Оно особенно полезно для сайтов с высоким трафиком, где каждая миллисекунда имеет значение.
Использование кэширования страниц с пакетом silber/page-cache помогает повысить производительность вашего Laravel-приложения, делая его быстрым и отзывчивым. Этот метод легко внедрить и поддерживать, что делает его идеальным выбором для разработчиков, стремящихся улучшить пользовательский опыт на своих сайтах.
Comments 2
Login to leave a comment
Nursultan Kabenov · Aug. 23, 2024 22:15
🔥
Laura Meir · Aug. 5, 2024 13:39
Комментарий для получения 1хр