2. Настройка сайта
config/local.php
Этот файл создается автоматически при установке. Он критически важен, так как содержит приватные ключи и пароли.
Важно: проект подхватывает config/local.php. Для совместимости со старыми/ошибочными установками также поддерживается config/local.php1, если local.php отсутствует.
Основные константы:
DB_HOST,DB_NAME,DB_USER,DB_PASS— Доступы к MySQL.SITE_URL— базовый URL сайта.API_SECRET— секрет для подписи Oxide API (связь с сервером).- RCON:
RUST_SERVER_IP,RUST_SERVER_PORT,RUST_RCON_PASSWORD. - Платежи: ключи от Yoomoney, UnitPay, FreeKassa и URL для уведомлений (
UNITPAY_CALLBACK_URL,FREEKASSA_CALLBACK_URL).
Платёжные флаги и отладка
При сохранении формы в админке добавляются флаги включения провайдеров:
PAYMENTS_ENABLED— общий переключатель.YOOMONEY_ENABLED,UNITPAY_ENABLED,FREEKASSA_ENABLED,ENOT_ENABLED— включение конкретного провайдера (0 или 1).
Дополнительные флаги отладки для ЮMoney (можно добавить вручную в local.php при проблемах):
YOOMONEY_DEBUG_ACCEPT(true/false) — если true, callback всегда возвращает 200 OK, даже при ошибке подписи (использовать только для тестов!).YOOMONEY_LOG_SIGNATURE(true/false) — если true, в лог ошибок записываются детали проверки подписи (полученный и ожидаемый хэш).
В config/config.php эти флаги имеют безопасные значения по умолчанию (false), чтобы шаблоны не падали при отсутствии local.php.
В шаблонах используются безопасные проверки вида defined('NAME') && constant('NAME'), что исключает предупреждения “Undefined constant” и делает конфигурацию стабильно читаемой.
Хранение сессий (sys_temp)
Для решения проблем с правами доступа и кириллическими путями в Windows, сессии теперь хранятся в папке проекта:
sys_temp/sessions
Это обеспечивает изоляцию сессий и стабильную работу авторизации (в том числе Steam) независимо от настроек PHP.ini.
Также параметр session.cookie_domain по умолчанию отключен (закомментирован) для корректной работы на localhost и по IP-адресу.
RCON: режимы и диагностика
В админке /admin/connect-shop используется авто-режим RCON:
- Сначала пробуется WebRCON (WebSocket) для Rust (
+rcon.web 1). - Если WebRCON недоступен — выполняется fallback на TCP RCON (
+rcon.web 0).
После попытки подключения отображается блок «Диагностика RCON» с режимом (WEBRCON/TCP) и человекопонятными ошибками.
Права доступа к папкам
Для корректной работы сайта (загрузка иконок, сохранение настроек, сессии) убедитесь, что следующие папки доступны для записи (chmod 777 или права пользователя веб-сервера):
config/(дляlocal.php)sys_temp/(для сессий и логов)assets/data/(для JSON-баз данных)assets/img/items/(для кэширования иконок предметов)
assets/data/content.json
В этом файле хранятся визуальные настройки, которые вы меняете через раздел Editor в админке:
- Заголовки и подзаголовки сайта.
- Иконка сайта (FontAwesome или URL изображения).
- Тексты в подвале, меню и копирайты.
- HTML-код баннеров и метрик (блок «Баннеры в подвале»).
- Список графических баннеров для подвала (картинка + ссылка).
Этот файл создается установщиком автоматически. При переносе сайта обязательно копируйте его, чтобы сохранить настройки дизайна.
Баннеры и рейтинги в подвале
Раздел настроек: Админка → Настройки → 5. Баннеры в подвале.
- Поле HTML код — для вставки виджетов рейтингов, счетчиков и кастомных баннеров.
- Список графических баннеров — добавляйте картинку и ссылку; вывод по центру и адаптивный.
Отображение: блоки выводятся по центру ниже юридической информации в подвале.
Аналитика и счётчик в подвале
На сайте отображается счётчик за текущий день: уникальные IP / просмотры (например, 125/345).
Для администратора счётчик кликабелен и ведет в Админка → Аналитика, где доступно:
- Авторизованные пользователи за сегодня (уникальные user_id).
- Гости за сегодня (уникальные IP).
- Разбивка по устройствам (Desktop/Mobile) и браузерам.
- Графики посещений: по дням (30), месяцам (12) и годам.
Все визиты логируются автоматически (маршрут, IP, браузер, тип устройства, user_id при наличии).
robots.txt
Файл создается автоматически для управления индексацией поисковыми системами. По умолчанию он разрешает индексацию всего сайта, кроме служебных разделов: /admin/, /api/, /config/.
Админка
Разделы: товары, категории, промокоды, заказы, очередь выдачи, платежи, виджеты. В списках доступны фильтры статуса (все/активные/отключённые), быстрые кнопки ON/OFF (без перезагрузки), и Del для полного удаления.
Настройка виджета ВКонтакте
Для корректного отображения виджета сообщества:
- Перейдите в Админку -> Виджеты.
- В поле URL группы укажите ссылку на группу (например,
rustclient). - В поле ID группы (числовой) обязательно укажите цифровой ID сообщества.
- Узнать ID можно, кликнув на любую картинку в группе (цифры после
photo-). - Или воспользуйтесь сервисом regvk.com.
- Узнать ID можно, кликнув на любую картинку в группе (цифры после
- Нажмите Сохранить.
Стилизация: Виджет автоматически получает темно-синюю рамку (#0077FF) и заголовок "Мы в Контакте", соответствующий дизайну сайта.
Структура каталога
Наполняется через админку. Изображения теперь кэшируются локально в assets/img/items/ при обновлении каталога. Это ускоряет загрузку и снижает зависимость от CDN. Если локальная иконка отсутствует, система автоматически пробует загрузить её с RustLabs.
Фон
Фоновая анимация /rustgif.gif выводится через body::before — это устраняет мигание и пропадание при прокрутке. Фоновый цвет: #0b1220.
Политика безопасности (CSP)
Включена политика CSP для продакшн окружения. Разрешены внешние изображения и стили: img-src 'self' data: https:. При интеграции новых провайдеров проверьте соответствие доменов CSP.