8.1 KiB
Установка AVE.cms
AVE.cms устанавливается через защищённую страницу /setup/. Установщик создаёт
минимальную рабочую систему, а дополнительные возможности подключаются после
первого входа.
Требования
- PHP 7.3 или новее с
mysqli,mbstring,jsonиopenssl; - MariaDB/MySQL с InnoDB и
utf8mb4; - пустая база данных либо свободный префикс таблиц;
- право записи в
configs/,storage/,tmp/иuploads/; - GD с WebP рекомендуется для работы с изображениями, но не блокирует установку.
Порядок установки
- Распакуйте обычный core-архив в корневой каталог сайта, сохранив скрытые
файлы, включая
.htaccess. Для компактной поставки достаточно распаковать внешний installer-архив: в корне сначала будут толькоindex.php,.htaccessиsetup/, а мастер сам проверит и развернёт вложенный runtime. - Создайте пустую базу и пользователя БД с правами на создание и изменение таблиц.
- Откройте корневой адрес сайта. При отсутствии конфигурации AVE.cms
перенаправит браузер на
/setup/. - Проверьте результаты диагностики окружения.
- Укажите сервер, порт, имя базы, пользователя, пароль и префикс таблиц.
- Для повторной установки на тестовом стенде можно включить Очистить таблицы префикса перед установкой. Потребуется вручную ввести точный префикс и подтвердить необратимое удаление соответствующих таблиц и представлений.
- Задайте название сайта, имя, логин, email и пароль администратора. Пароль
должен содержать не менее 8 символов. При необходимости измените имя папки
панели управления; по умолчанию используется
adminx. - Нажмите Установить AVE.cms, затем откройте панель управления.
При компактной установке перед основной формой отображается отдельный прогресс
распаковки. Каждый файл сверяется с PACKAGE-MANIFEST.json, а вложенный
setup/runtime.zip и его checksum удаляются только после полной проверки.
Если распаковка прервалась, снова откройте /setup/: процесс продолжится с
сохранённого шага.
Подробнее о выборе адреса и переименовании после установки: Папка панели управления.
Что создаётся
- core-таблицы AVE.cms в InnoDB;
- один системный администратор;
- системные настройки, константы и базовые права;
- основной HTML-шаблон с
[tag:maincontent]; - одна рубрика, поля заголовка и richtext, опубликованная главная страница с сообщением об успешной установке и служебная страница 404.
Публичные пользователи не создаются. Регистрация и восстановление пароля выключены. Товары, заказы, способы оплаты, формы, RSS и остальные модули не входят в core-архив: их ZIP-пакеты можно загрузить и установить отдельно в разделе Система → Модули.
Расширенная bundle-сборка может уже содержать проверенные пакеты «Справка» и «Безопасность файлов». Наличие файлов не включает модуль: после установки AVE.cms он отображается в разделе Система → Модули со статусом «Доступен» и устанавливается отдельным осознанным действием администратора.
Защита повторного запуска
После успешной установки создаётся storage/installed.lock. Установщик также
проверяет наличие системных пользователей в выбранном префиксе. Поэтому простое
открытие /setup/ не может перезаписать рабочую систему.
Для осознанной чистой переустановки используйте новую базу или свободный префикс,
удалите configs/db.config.php и storage/installed.lock, затем снова откройте
/setup/. Если нужен тот же префикс, включите режим его очистки в форме
установщика. Он удаляет только таблицы и представления вида <префикс>_*;
объекты с другими префиксами остаются нетронутыми. Не используйте этот режим на
рабочем сайте без проверенной резервной копии.
Защита каталога загрузок
В поставке uploads/.htaccess запрещает Apache исполнять и напрямую отдавать
PHP-подобные файлы. Nginx не читает .htaccess, поэтому эквивалентное правило
нужно добавить в конфигурацию сервера перед общим обработчиком PHP:
location ~* ^/uploads/.*\.(php[0-9]*|phtml|phar)(\..*)?$ {
return 404;
}
После изменения конфигурации проверьте, что обращение к любому
/uploads/example.php возвращает 403 или 404, а изображения продолжают
отдаваться как статические файлы.
Корневой .htaccess также закрывает исходники пакетов модулей. Для Nginx
нужен эквивалент: разрешить только статику из трёх asset-root, а всё
остальное под /modules/ вернуть как 404:
location /modules/ {
return 404;
}
location ~* ^/modules/[A-Za-z0-9_-]+/((app|admin)/)?assets/.+\.(css|js|mjs|svg|png|jpe?g|gif|webp|avif|ico|woff2?|ttf|otf|eot|mp4|webm)$ {
try_files $uri =404;
}
Второй regex-location имеет приоритет над обычным prefix-location. Не добавляйте ^~
к location /modules/, иначе он закроет и разрешённые ассеты.
После первого входа
- Проверьте главную страницу сайта и контрольный документ.
- Уточните основные настройки и адрес сайта.
- Установите только нужные проекту модули.
- Настройте роли и выдайте сотрудникам минимально необходимые права.
- Удалите или замените контрольный документ после создания реального контента.