CMS Statamic — современная быстрая система для создания статических и динамических сайтов, которая часто используется разработчиками для лендингов, корпоративных порталов и авторских проектов. Однако установка и переустановка Statamic на хостинге BeGet под PHP 8.3 регулярно сопровождается специфическими критическими ошибками, которые не описаны в стандартных руководствах.
Чаще всего пользователи сталкиваются с блокировкой инсталляции в непустую директорию, ошибкой Vite manifest not found, белым экраном админ-панели, отсутствием команд пользовательского пространства и ошибками прав доступа при работе через SSH. Стандартные инструкции не учитывают ограничения хостинга BeGet, из-за чего переустановка завершается сбоем, сайт не открывается, а панель управления Statamic остаётся недоступной.
Данная статья представляет собой проверенный на практике финальный алгоритм переустановки Statamic на BeGet под актуальную версию PHP 8.3, полностью лишённый костылей, экспериментальных команд и распространённых ошибок. Все шаги максимально адаптированы под технические ограничения хостинга, дополнены детальным аналитическим разбором и объяснением логики каждого действия. Инструкция подходит для повторного использования при любой переустановке CMS Statamic на хостинге BeGet и гарантирует стабильный результат без поломок функционала сайта и админ-панели.
Введение: основные проблемы при установке Statamic на хостинге BeGet
Большинство публичных универсальных инструкций по установке Statamic не адаптированы под особенности хостинга BeGet и работу с PHP 8.3. Именно поэтому у начинающих и опытных разработчиков часто возникают критические сбои, которые блокируют работу сайта и админ-панели. Мы собрали самые высокочастотные проблемы, с которыми сталкиваются пользователи при самостоятельной переустановке Statamic на BeGet:
- Ошибка «Project directory is not empty» при установке Statamic: Composer блокирует инсталляцию платформы в непустую корневую папку public_html, что делает стандартную установку невозможной;
- Белый экран админ-панели Statamic и ошибка Vite manifest not found: отсутствие опубликованных статических ассетов контрольной панели, основная причина неработающей панели управления после установки;
- Ошибка There are no commands defined in the «user» namespace Statamic: недоступность стандартных команд создания пользователей из-за неправильной регистрации сервис-провайдеров CMS;
- Ошибки прав доступа BeGet при работе с SSH: запрет обычным SSH-пользователям выполнять системную команду chown, которая присутствует в универсальных инструкциях;
- Сломанные пути index.php Statamic на BeGet: некорректная работа главного файла обработчика после переноса публичных файлов в корень домена public_html.
Представленный в статье авторский алгоритм закрывает все перечисленные популярные проблемы, является полностью стабильным, повторяемым и подходит для любой плановой или аварийной переустановки CMS Statamic на хостинге BeGet без потери работоспособности системы.
Предварительные требования для переустановки Statamic на BeGet
Перед началом работы необходимо убедиться в соответствии хостинга и окружения ключевым требованиям, обязательным для корректной установки Statamic под PHP 8.3 на BeGet:
- Активный хостинг BeGet с подключённым и рабочим SSH-доступом для выполнения консольных команд;
- Установленная версия PHP 8.3 (вся инструкция строго адаптирована под эту версию, другие версии вызывают конфликты зависимостей);
- Стандартная структура домена BeGet с корневой папкой сайта public_html;
- Отсутствие обязательных резервных копий пользовательских данных (инструкция включает полное создание новых системных файлов и суперпользователя админ-панели Statamic).

Пошаговая инструкция переустановки Statamic на BeGet PHP 8.3 с разбором ошибок
Шаг 1. Полная очистка папки public_html на BeGet для чистой установки Statamic
Задача данного шага — полностью удалить старую повреждённую установку Statamic, остатки кэша, конфликтных файлов и скрытых системных элементов, чтобы исключить любые блокировки при работе Composer и чистой инсталляции CMS.
| bash cd ~/ваш сайт/public_html find . -mindepth 1 -delete |
Аналитика и польза для SEO:
- Команда find . -mindepth 1 -delete полностью очищает директорию от всех обычных и скрытых файлов, не затрагивая сам корневой каталог public_html;
- Полная очистка исключает ошибку непустой директории, которая является самой частой проблемой при попытке прямой установки Statamic в корень сайта на BeGet;
- Проверка результата: выполнение командыls -la должно показывать только системные метки . и .., подтверждая полную чистоту папки для установки.
Шаг 2. Установка локального Composer и инсталляция Statamic во временную папку
Задача шага — обойти стандартное ограничение Composer на установку проекта в непустую папку, а также использовать стабильный локальный Composer вместо нестабильного системного Composer хостинга BeGet для PHP 8.3. Это ключевой приём, который решает проблему блокировки инсталляции Statamic на BeGet.
| bash php8.3 -r «copy(‘https://getcomposer.org/installer’, ‘composer-setup.php’);» php8.3 composer-setup.php rm -f composer-setup.phpphp8.3 ./composer.phar create-project statamic/statamic tmp_static —no-devcp -r tmp_static/* . cp -r tmp_static/.* .rm -rf tmp_static |
Детальная аналитика ключевых особенностей метода:
- Системный Composer хостинга BeGet нестабилен при работе с PHP 8.3, поэтому используется автономный файлphar, гарантирующий корректную загрузку зависимостей Statamic;
- Установка Statamic во временную папку tmp_static — единственный рабочий метод обойти ошибку Project directory is not empty на хостинге BeGet;
- Флаг —no-dev отключает установку отладочных пакетов, снижает нагрузку на хостинг, ускоряет инсталляцию и исключает конфликты нерелевантных зависимостей;
- Копирование скрытых файлов из временной папки гарантирует перенос всех системных конфигов Statamic, без которых работа CMS невозможна;
- Удаление временной директории после завершения переноса файлов очищает корень сайта от лишних папок и не создаёт мусорных файлов.
Шаг 3. Перенос публичных файлов Statamic в корень домена BeGet
Стандартная установка Statamic предполагает размещение публичных файлов во вложенной папке public. Однако хостинг BeGet использует как корень домена директориюpublic_html, поэтому требуется обязательный перенос всех публичных элементов в корень для открытия сайта и корректной маршрутизации.
| bash cp -r public/* . cp public/.htaccess . |
Аналитика важности шага:
- Без переноса файлов из папки public сайт Statamic не открывается, возникают массовые ошибки 404 и отсутствия маршрутов страниц;
- Файл .htaccess отвечает за переадресацию всех запросов через главный обработчик php — его отсутствие полностью ломает маршрутизацию сайта на BeGet.
Шаг 4. Исправление относительных путей в index.php Statamic (критический фикс ошибок)
После переноса публичных файлов в корень public_html стандартные относительные пути в файле index.php ломаются, что вызывает ошибки загрузки ядра Laravel и Statamic. Важно знать, что запрещено вводить PHP-код построчно в терминал SSH — это вызывает синтаксические ошибки. Используется единая команда перезаписи файла с готовым корректным кодом.
| bash cat > index.php << ‘EOF’ <?phpuse Illuminate\Foundation\Application; use Illuminate\Http\Request;define(‘LARAVEL_START’, microtime(true));$maintenance = __DIR__.’/storage/framework/maintenance.php’; if (file_exists($maintenance)) { require $maintenance; }require __DIR__.’/vendor/autoload.php’; /** @var Application $app */ $app->handleRequest(Request::capture()); |
Аналитика исправления:
- Исходный файл php содержит префиксы ../, которые теряют актуальность после переноса в корневую папку public_html;
- Единая консольная запись исключает интерпретацию PHP-кода как bash-команд и полностью убирает синтаксические ошибки;
- Исправленные абсолютные пути гарантируют стабильную загрузку автозагрузчика и ядра приложения Statamic на BeGet.
Шаг 5. Создание конфига .env и суперпользователя Statamic (без резервных копий)
Частая проблема пользователей — отсутствие резервных копий папки users и файла .env после переустановки. Стандартная команда user:create не работает из-за особенностей ручного переноса файлов, поэтому используется проверенная альтернатива для создания админа Statamic на BeGet.
| bash cp .env.example .env php8.3 please key:generate |
После выполнения команд откройте файл .env через файловый менеджер BeGet и пропишите актуальный домен сайта:
| env APP_URL=https://ваш сайт |
Создание суперпользователя админ-панели Statamic (рабочая замена неработающей команды user:create):
| bash php8.3 please make:user |
Детальная аналитика решений проблем авторизации:
- cp .env.example .env создаёт базовый рабочий конфиг окружения, обязательный для работы сессий пользователей и шифрования данных Statamic;
- key:generate формирует уникальный APP_KEY, без которого невозможна авторизация в панели и работа защищённых данных системы;
- Команда user:create выдаёт ошибку пустого пространства имён при ручном переносе файлов из временной папки;
- make:user — ядровая команда Laravel, стабильно создающая полноценного суперпользователя для админ-панели Statamic на BeGet.
Шаг 6. Настройка прав доступа файлов BeGet (без запрещённой команды chown)
Хостинг BeGet блокирует выполнение командыchown для обычных SSH-пользователей, поэтому все универсальные инструкции с этой командой дают ошибки. Мы используем только разрешённые права доступа, гарантирующие работу Statamic без сбоев.
| bash find . -type d -exec chmod 755 {} \; find . -type f -exec chmod 644 {} \; chmod -R 775 storage bootstrap/cache |
Аналитика настроек прав:
- Команда chown полностью исключена из алгоритма, так как не поддерживается хостингом BeGet для стандартных пользователей;
- Права 755 для папок — стандартные безопасные параметры веб-доступа для любых сайтов на BeGet;
- Права 644 для файлов блокируют произвольное исполнение скриптов и защищают сайт от уязвимостей;
- Повышенные права 775 для папок storage и bootstrap/cache позволяют веб-серверу записывать кэш, сессии и временные данные Statamic.
Шаг 7. Безопасная публикация статических ассетов Statamic (исправление Vite manifest not found)
Ошибка Vite manifest not found и белый экран админ-панели Statamic возникают из-за отсутствия опубликованных CSS и JS файлов панели управления. Для исправления используется безопасная публикация по тегам без опасных флагов перезаписи.
| bash php8.3 please vendor:publish —tag=statamic-cp,statamic-frontend |
Аналитика безопасности и результативности:
- Строго запрещено использовать флаги —force и —all — они перезаписывают системные файлы Statamic и ломают работу админ-панели;
- Публикация по целевым тегам загружает только необходимые ассеты контрольной панели и фронтенда, не затрагивая системные конфиги;
- Сообщение No publishable resources является нормой — оно подтверждает, что статические файлы уже присутствуют в системе и не требуют повторной загрузки.
Шаг 8. Комплексная очистка всех типов кэша Statamic на BeGet
После переустановки и изменения конфигураций остаётся старый кэш конфигов, контента и шаблонов, который вызывает конфликты и ошибки отображения. Комплексная очистка полностью сбрасывает устаревшие данные.
| bash php8.3 please config:clear php8.3 please cache:clear php8.3 please stache:clear php8.3 please view:clear rm -rf storage/framework/sessions/* |
Аналитика очистки кэша:
- config:clear обновляет конфигурацию системы по актуальным параметрам файла .env;
- stache:clear очищает уникальный кэш контента Statamic (коллекции, блюпринты, поля и глобальные переменные);
- view:clear удаляет скомпилированные шаблоны, исключая ошибки рендеринга страниц;
- Очистка сессий удаляет остатки старой авторизации из предыдущей повреждённой установки CMS.
Шаг 9. Финальная проверка работоспособности сайта и панели Statamic
После завершения всех технических шагов выполняется финальная проверка, подтверждающая полную работоспособность системы:
- Выполните жёсткую перезагрузку браузера Ctrl+Shift+R для сброса локального браузерного кэша;
- Откройте адрес админ-панели https://ваш-домен.ru/cp;
- Авторизуйтесь под данными созданного суперпользователя Statamic.
Итоговый результат: админ-панель Statamic открывается без белого экрана и ошибки Vite manifest not found, все разделы управления контентом полностью доступны, сайт работает стабильно на хостинге BeGet под PHP 8.3.
Ключевые правила и запреты для стабильной установки Statamic на BeGet
Для исключения повторных ошибок при переустановке Statamic на хостинге BeGet достаточно соблюдать проверенные правила, выведенные на практике:
- ✅ Установка Statamic только во временную папку tmp_static, не напрямую в корень public_html;
- ✅ Исправление файла index.php только через единую консольную команду без ручного построчного ввода PHP-кода;
- ✅ Создание админа Statamic через команду make:user при отсутствии резервных копий;
- ✅ Публикация статических ассетов только по целевым тегам без принудительной перезаписи;
- ❌ Запрещено использовать команду chown на хостинге BeGet;
- ❌ Запрещено использовать vendor:publish —force для публикации ассетов Statamic;
- ❌ Запрещено вводить PHP-код как отдельные bash-команды в SSH-терминале.
Заключение
Представленный авторский алгоритм переустановки Statamic на BeGet под PHP 8.3 является полностью проверенным на практике, лишённым экспериментальных решений и костылей. Он полностью учитывает все технические ограничения хостинга BeGet и специфику работы CMS Statamic, закрывает все популярные ошибки: Vite manifest not found, белый экран админ-панели, ошибки прав доступа, блокировку установки в непустую директорию и отсутствие команд создания пользователей. Строгое соблюдение последовательности шагов гарантирует стабильную работу сайта и админ-панели Statamic без сбоев после переустановки.
Часто задаваемые вопросы (FAQ) по переустановке Statamic на BeGet
В данном блоке собраны самые частые вопросы разработчиков и вебмастеров, возникающие при самостоятельной установке и переустановке CMS Statamic на хостинге BeGet под PHP 8.3. Ответы основаны на практическом опыте и полностью соответствуют рабочему алгоритму из статьи, помогают быстро решить внештатные ситуации без дополнительных ошибок.
Вопрос 1: Почему на BeGet не работает команда chown при настройке прав Statamic?
Ответ: Хостинг BeGet блокирует изменение владельца файлов и папок для стандартных SSH-пользователей. Команда chown является запрещённой и не требуется для корректной работы Statamic. Достаточно установить стандартные права 755 для папок, 644 для файлов и расширенные права 775 для директорий storage и bootstrap/cache. Эти настроек полностью хватает для стабильной работы CMS без ошибок записи и чтения данных.
Вопрос 2: Что делать, если при установке Statamic появляется ошибка «Project directory is not empty»?
Ответ: Данная ошибка возникает при попытке прямой установки Statamic в непустую корневую папку public_html. Стандартное решение — отказаться от прямой инсталляции в корень и использовать временную папку tmp_static. Установка CMS во вспомогательную директорию полностью обходит ограничение Composer, после чего готовые файлы переносятся в корень сайта, исключая любые конфликты файловой системы.
Вопрос 3: Почему не работает команда user:create в Statamic на BeGet?
Ответ: Команда user:create не функционирует при ручном переносе файлов Statamic из временной папки, так как сервис-провайдеры CMS не проходят автоматическую регистрацию, и пространство имён user не инициализируется. Рабочая альтернатива — ядровая команда Laravel make:user, которая стабильно создаёт полноценного суперпользователя админ-панели без ошибок и дополнительных настроек.
Вопрос 4: Как исправить ошибку Vite manifest not found и белый экран админ-панели Statamic?
Ответ: Проблема возникает из-за отсутствия опубликованных статических ассетов админ-панели (CSS, JS, шрифты). Для исправления достаточно выполнить безопасную публикацию по целевым тегамstatamic-cp,statamic-frontend без флагов —force и —all. После публикации ассетов и комплексной очистки кэша белый экран и ошибка Vite пропадают полностью, панель управления открывается корректно.
Вопрос 5: Обязательно ли исправлять файл index.php после переноса публичных файлов Statamic в корень BeGet?
Ответ: Исправление index.php является обязательным шагом. Стандартный файл содержит относительные пути с префиксом../, которые теряют актуальность после переноса файлов из папки public в корень public_html. Без исправленных абсолютных путей ядро Laravel и Statamic не загружается, сайт выдаёт критические ошибки и не открывается. Редактирование выполняется единой консольной командой, исключающей синтаксические сбои.
Вопрос 6: Нормально ли сообщение «No publishable resources» при публикации ассетов Statamic?
Ответ: Да, это абсолютно нормальное системное уведомление. Оно означает, что все необходимые статические файлы админ-панели и фронтенда уже присутствуют в директориях проекта, повторная публикация не требуется. Данное сообщение не является ошибкой и не влияет на работоспособность сайта и панели управления Statamic.
Вопрос 7: Можно ли использовать старые резервные копии users и .env после переустановки Statamic?
Ответ: Если резервные копии не повреждены и соответствуют версии установленной Statamic, их можно безопасно восстановить. При отсутствии актуальных бэкапов используется вариант создания нового конфига .env, генерации секретного ключа и нового суперпользователя через команду make:user, что полностью восстанавливает работоспособность системы.
Вопрос 8: Почему после переустановки Statamic не открывается админ-панель даже после очистки кэша?
Ответ: Чаще всего проблема связана с неактуальным локальным кэшем браузера. Решение — выполнить жёсткую перезагрузку страницы Ctrl+Shift+R или открыть панель в режиме инкогнито. Также стоит проверить корректность указанного домена в параметре APP_URL файла .env и правильность настроек прав доступа к папкам storage и bootstrap/cache.
Вопрос 9: Почему нельзя использовать флаг —force при публикации ассетов Statamic на BeGet?
Ответ: Флаг —force выполняет принудительную перезапись системных конфигурационных файлов Statamic. Это приводит к поломке маршрутизации панели управления, потере стандартного функционала CMS, конфликтам зависимостей и неустранимым ошибкам в работе админ-панели. Безопасная публикация только по целевым тегам сохраняет все системные файлы в исходном состоянии.
Вопрос 10: Подходит ли данный алгоритм для других версий PHP, кроме 8.3?
Ответ: Представленный алгоритм полностью адаптирован исключительно под PHP 8.3. Использование других версий PHP вызывает несовместимость зависимостей Statamic и Composer, появление критических ошибок установки, неработающих команд и сбоев в работе ядра CMS. Для стабильной переустановки требуется строго версия PHP 8.3 на хостинге BeGet.
Итог
Представленный авторский алгоритм переустановки Statamic на BeGet под PHP 8.3 является полностью проверенным на практике, лишённым экспериментальных решений и костылей. Он полностью учитывает все технические ограничения хостинга BeGet и специфику работы CMS Statamic, закрывает все популярные ошибки: Vite manifest not found, белый экран админ-панели, ошибки прав доступа, блокировку установки в непустую директорию и отсутствие команд создания пользователей. Строгое соблюдение последовательности шагов гарантирует стабильную работу сайта и админ-панели Statamic без сбоев после переустановки.