Перейти к содержимому

Установка Pro

rankbeam/laravel-seo-pro добавляет к ядру сканирование сайта через очередь с отслеживанием проблем, менеджер перенаправлений и монитор 404. Движок работает в любом приложении Laravel 11–13 — Blade, Inertia или чистом API. Filament — необязательный слой интерфейса: установите его, чтобы получить SEO-панель, менеджер перенаправлений и монитор 404 как страницы панели, или управляйте всем через команды artisan.

Требования

PHP8.2–8.4 (Laravel 11); 8.2–8.5 (Laravel 12); 8.3–8.5 (Laravel 13)
Laravel11, 12 или 13
rankbeam/laravel-seo^3.20 (устанавливается автоматически с Pro 2.40+)
filament/filamentНеобязательно — 4.x или 5.x, только для интерфейса администратора
rankbeam/laravel-seo-filamentНеобязательно — ^1.11 при использовании SEO-редактора с Pro 2.36+

Начните с существующего приложения Laravel с настроенной базой данных. Сначала выполните быстрый старт ядра, чтобы модель выводила метаданные и таблицы ядра уже существовали. Лицензия Pro предоставляет указанные ниже учётные данные Composer.

Наглядный пример результата — сканирование → исправление → отчёт.

Установка пакета

Pro распространяется через закрытый репозиторий Composer, связанный с вашей лицензией. Один раз добавьте репозиторий, затем установите пакет: Composer запросит email лицензии (имя пользователя) и лицензионный ключ (пароль):

Lemon Squeezy принимает оплату как официальный продавец. После оплаты на закрытой странице квитанции доступны ключ загрузки и инструкции Composer. В качестве имени пользователя используйте email покупки. Репозиторий пакета размещает Rankbeam; учётная запись Anystack не нужна. Не раскрывайте ссылку на квитанцию и auth.json. Полный возврат средств отзывает доступ к последующим загрузкам и обновлениям, не прерывая работу установленного приложения.

bash
composer config repositories.rankbeam-pro composer https://blog.rankbeam.dev/composer
composer require rankbeam/laravel-seo-pro
Неинтерактивная аутентификация Composer

Для CI и других неинтерактивных окружений заранее сохраните учётные данные:

bash
composer config http-basic.blog.rankbeam.dev you@example.com YOUR-LICENSE-KEY

Затем запустите установщик:

bash
php artisan seo-pro:install

Установщик публикует config/seo-pro.php и миграции Pro, выполняет migrate и выводит дальнейшие шаги. Теперь в базе приложения должны присутствовать таблицы ядра и Pro.

Ручная установка и параметры установщика

Миграции Pro публикуются в приложение, а не загружаются автоматически из пакета. Эквивалентные ручные шаги:

bash
php artisan vendor:publish --tag=seo-pro-config
php artisan vendor:publish --tag=seo-pro-migrations
php artisan migrate

Установщик можно запускать повторно. --no-migrate публикует файлы без выполнения миграций. Используйте --force, только если намерены перезаписать опубликованные файлы, включая свою конфигурацию.

Регистрация целей сканирования

В сервис-провайдере укажите, что сканировать: классы моделей, именованные маршруты или всё из реестра карт сайта:

php
use App\Models\Post;
use Rankbeam\Seo\Pro\Facades\SeoPro;

public function boot(): void
{
    SeoPro::targets()->register('posts', Post::class);
    // Optional: register named routes that exist in your app.
    // SeoPro::targets()->registerRoutes('static', ['home', 'pricing']);
    // Or discover targets from your registered sitemaps:
    // SeoPro::targets()->fromSitemaps();
}

Замените Post своей моделью с HasSEO. Для результата сканирования модели нужна хотя бы одна запись. Цели-маршруты должны ссылаться на существующие имена маршрутов; не добавляйте эту регистрацию, если хотите сканировать только модели.

Проверка установки

Запустите проверку конфигурации:

bash
php artisan seo:doctor

Убедитесь, что таблицы ядра и Pro существуют, URL приложения задан верно, а цели сканирования перечислены. Выполните предложенные исправления. Предупреждение об очереди sync ожидаемо, пока вы пробуете синхронные команды ниже; перед планированием сканирований рабочего сайта настройте воркер.

Пример результата проверки состояния
  Rankbeam SEO — health check

  Application
    ✓ app.url is https://shop.example.com
  Database (core)
    ✓ Core tables present (seo_meta, seo_defaults)
  Database (Pro)
    ✓ Pro tables present (redirects, 404 logs, scan runs/issues/results)
  Scanning
    ✓ Scan targets registered: posts, static
    ✓ Scan delta snapshot store present (seo_scan_run_issues)
  Queue
    ! Queue connection is 'sync'
      ↳ Scans run inline on the dispatching request/CLI. Use a real queue …
    ✓ Scan queue: default (seo-pro.scan.queue unset)
  Broken links
    ✓ Broken-link crawler is off (optional)
  AI assist
    ✓ AI assist is off (optional)
  AI bots
    ✓ AI-bot logging is off (optional)
  Search Console
    ✓ Search Console is off (optional)
  Reports
    ✓ Reports on (snapshot store present: seo_report_runs)

  ! Healthy with warnings — 1 warning(s), 11 passed.

seo:doctor проверяет конфигурацию и историю недавних запусков без сетевых запросов и вывода секретов. Команда не может доказать, что внешний cron или воркер действительно работает. Критические ошибки возвращают ненулевой код завершения, предупреждения — нет. Для машиночитаемого результата используйте --json.

Первое сканирование

bash
php artisan seo-pro:scan --sync
php artisan seo-pro:scan-status

Первая команда выполняет сканирование синхронно, поэтому для этой первоначальной проверки воркер очереди не нужен. Вторая показывает последний запуск и его результаты. Ожидайте завершённый запуск с обработанными зарегистрированными целями; разберитесь с ошибками отдельных целей, прежде чем считать сканирование завершённым.

Исправьте одно отмеченное поле, сохраните его и запустите сканирование повторно. Пошаговый пример показывает это для отсутствующего описания и отчёта об изменении. Техническая оценка — результат диагностики, а не прогноз позиций.

Работа без интерфейса

Движок готов к работе без панели. Команды artisan позволяют сканировать, изучать проблемы, создавать перенаправления и отчёты. Middleware перенаправлений и 404 по умолчанию регистрируются автоматически; их настройки находятся в config/seo-pro.php.

Для работы по расписанию настройте очереди, воркеры, планировщик и сроки хранения по руководству для рабочего окружения.

Добавление панели Filament (необязательно)

В существующей панели Filament 4 или 5 зарегистрируйте плагин Pro, как показано ниже. Если панели ещё нет, сначала установите пакеты интерфейса и создайте её:

bash
composer require filament/filament rankbeam/laravel-seo-filament
php artisan filament:install --panels
php artisan make:filament-user
php
use Rankbeam\Seo\Pro\Filament\SeoProPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        // ...
        ->plugin(SeoProPlugin::make());
}

Это добавляет SEO-панель (действие сканирования всех целей, ход выполнения в реальном времени, список проблем с повторным сканированием одним нажатием), менеджер перенаправлений и монитор 404 с действием создания перенаправления одним нажатием. rankbeam/laravel-seo-filament также добавляет раздел SEO-полей в формы ресурсов.

Устранение неполадок

РезультатСледующий шаг
Composer отклоняет учётные данныеПроверьте email лицензии и ключ для blog.rankbeam.dev. Не сохраняйте учётные данные в системе контроля версий.
Doctor сообщает об отсутствующих таблицахВыполните быстрый старт ядра, затем seo-pro:install и migrate для той же базы, которую использует приложение.
Сканирование не обрабатывает ни одной целиПроверьте регистрацию в провайдере и наличие записей модели.
Сканирование в очереди остаётся в ожиданииЗапустите настроенный воркер очереди или используйте --sync для синхронной проверки.
Цель завершилась с ошибкойДо повторного сканирования проверьте детали запуска, имена маршрутов и URL приложения.
Панель отсутствуетЗарегистрируйте SeoProPlugin в действительно используемой панели и проверьте правила доступа.

Восстановление воркеров и повседневная эксплуатация описаны в настройке рабочего окружения.

Лицензия и возвраты

Лицензия для первых клиентов стоит €179 единоразово и покрывает до пяти рабочих проектов, включая клиентские, с пожизненными обновлениями. Копии этих проектов для разработки и staging отдельно не учитываются. Включены помощь с установкой/миграцией, 60-минутный звонок по установке и объявленный набор настройки к запуску. В течение 30 дней можно запросить безусловный полный возврат через квитанцию или по адресу valentinogoxhaj@gmail.com. После полного возврата прекратите использование Pro. Вы можете изменять Pro для лицензированных проектов, но не можете публиковать его исходный код или перепродавать как отдельный пакет либо стартовый набор. Полные условия лицензии включены в пакет.

Используйте Pro максимум в пяти рабочих проектах, включая клиентские. Копии этих проектов для разработки, staging и тестирования отдельно не учитываются. Пожизненные обновления включают будущие выпуски Pro, но не постоянную персональную работу по внедрению.

Включены один 60-минутный звонок по установке и настройке, а также миграция метаданных для одного первоначального проекта. Миграция охватывает поддерживаемые источники; перед началом согласуется объём работ, а индивидуальные изменения приложения оцениваются отдельно. Подготовка к запуску включает проверку и настройку llms.txt, правил ИИ-роботов в robots.txt и Markdown-ответов роботам в том же проекте средствами бесплатного Core. Для организации включённой помощи напишите на hello@rankbeam.dev.

К вашему заказу применяется предложение, действовавшее при покупке.

rankbeam/laravel-seo распространяется под лицензией MIT.