Руководство по устранению распространённых проблем с сервером RedM, включая ошибки лицензионного ключа, видимость в браузере серверов, сбои ресурсов, клиентские подключения, проблемы с базой данных и оптимизацию производительности. Инструкции по первоначальной настройке см. в нашем Руководстве по настройке сервера RedM.
Ошибки лицензионного ключа
Проблемы с лицензионным ключом — самая распространённая проблема при запуске нового сервера RedM. Вот типичные ошибки и их решения:
«Invalid license key» или «Could not authenticate»
| Причина | Решение |
|---|---|
| Лицензионный ключ введён с ошибкой или содержит лишние пробелы | Скопируйте ключ напрямую из Keymaster. Удалите любые начальные/завершающие пробелы из переменной запуска CFX_LICENSE в GPanel или строки sv_licenseKey в server.cfg. |
| Несовпадение IP-адреса | Ключ зарегистрирован на другой IP, чем фактический IP вашего сервера. Перейдите в Keymaster, проверьте зарегистрированный IP и обновите его, чтобы он совпадал с IP вашего сервера, показанным в GPanel. |
| Ключ задан и в GPanel, и в server.cfg с разными значениями | Убедитесь, что ключ согласован. Лучше всего задать его в переменной запуска GPanel и позволить egg передавать его серверу. Удалите или закомментируйте sv_licenseKey в server.cfg, если этим занимается GPanel. |
| Проблема с учётной записью Cfx.re или ключ отозван | Войдите в Keymaster и проверьте, что ключ всё ещё активен. Сгенерируйте новый ключ, если старый был удалён или истёк. |
| Сервис Keymaster временно недоступен | Проверьте страницу статуса Cfx.re на наличие сбоев. Подождите и повторите попытку позже. |
Сервер не появляется в браузере
Если ваш сервер работает, но игроки не могут найти его в браузере серверов RedM:
Контрольный список
- Подождите не менее 5 минут. После запуска серверу нужно время для регистрации в мастер-списке серверов Cfx.re. Новым серверам может потребоваться несколько минут, чтобы появиться.
- Проверьте действительность лицензионного ключа. Сервер не будет в списке без работающего лицензионного ключа. Проверьте консоль сервера на наличие ошибок, связанных с лицензией.
- Проверьте конфигурацию эндпоинтов. Убедитесь, что
endpoint_add_tcpиendpoint_add_udpвserver.cfgиспользуют правильный порт:
Порт должен совпадать с тем, что назначен в GPanel.endpoint_add_tcp "0.0.0.0:30120" endpoint_add_udp "0.0.0.0:30120" - Проверьте настройки «sv_master1» или листинга. Убедитесь, что вы случайно не настроили сервер так, чтобы он не попадал в список. В вашей конфигурации не должно быть
sv_master1 ""(это отключает регистрацию в мастер-списке). - Убедитесь, что сервер действительно работает. Проверьте консоль GPanel. Если сервер аварийно завершил работу или остановился, он не появится в браузере.
- Попробуйте прямое подключение. Даже если сервера нет в браузере, прямое подключение должно работать. Попросите игрока нажать F8 в RedM и ввести:
connect YOUR_SERVER_IP:PORT
http://YOUR_SERVER_IP:PORT/info.json в веб-браузере. Если сервер работает и доступен, он вернёт JSON-ответ с информацией о сервере.
Сбои загрузки ресурсов
Ошибки ресурсов часто возникают при добавлении новых скриптов или фреймворков на ваш сервер. Вот наиболее частые проблемы:
«Could not find resource [resource_name]»
- Папка ресурса не существует в каталоге
resources/или находится в неправильном месте. - Имя папки не совпадает с именем, используемым в
ensure. Имена ресурсов чувствительны к регистру. - Решение: Убедитесь, что папка ресурса существует и имя в
server.cfgточно совпадает. Используйте файловый менеджер GPanel или SFTP для проверки.
«Failed to load resource [resource_name]: manifest error»
- В файле
fxmanifest.luaили__resource.luaресурса есть синтаксическая ошибка. - Манифест ссылается на файлы, которые не существуют в папке ресурса.
- Решение: Откройте файл манифеста и проверьте на опечатки, отсутствующие запятые или ссылки на несуществующие файлы. Проверьте консоль сервера на конкретный номер строки ошибки.
«Error loading script [filename]: [error details]»
- В файле Lua, C# или JavaScript внутри ресурса есть синтаксическая ошибка или ошибка времени выполнения.
- Решение: Прочитайте полное сообщение об ошибке в консоли. Оно будет включать имя файла и номер строки. Распространённые причины включают:
- Отсутствующие зависимости (другой ресурс, который должен быть загружен первым)
- Устаревший ресурс, несовместимый с текущей версией сервера RedM
- Неправильные значения конфигурации в файле конфигурации ресурса
Проблемы с порядком загрузки ресурсов
Ресурсы в server.cfg загружаются в том порядке, в котором они указаны. Если ресурс зависит от другого (например, vorp_inventory зависит от vorp_core), зависимость должна быть указана первой:
# Correct order - dependencies first
ensure oxmysql
ensure vorp_core
ensure vorp_inventory
ensure vorp_stores
# Wrong order - will cause errors
# ensure vorp_inventory <-- depends on vorp_core
# ensure vorp_core <-- loaded too late
Проблемы с клиентским подключением
Когда игроки не могут подключиться к вашему серверу:
«Connection timed out» / «Failed to connect»
| Причина | Решение |
|---|---|
| Сервер не работает | Проверьте консоль GPanel, чтобы подтвердить, что сервер в сети и не завершился аварийно. |
| Неправильный IP или порт | Убедитесь, что игрок использует правильный IP и порт из GPanel. См. Как найти IP-адрес и порт вашего сервера. |
| Неправильная конфигурация эндпоинта | Убедитесь, что endpoint_add_tcp и endpoint_add_udp в server.cfg используют 0.0.0.0:PORT, где PORT совпадает с GPanel. |
| Сервер заполнен | Проверьте, не достигнуто ли значение sv_maxclients. Увеличьте значение, если ваш тарифный план хостинга это позволяет. |
«Connection rejected by server»
- Пароль сервера: Если установлен
sv_password, игрок должен ввести правильный пароль. - Ресурс белого списка (whitelist/allowlist): Если у вас включён ресурс белого списка, игрок должен быть одобрен перед подключением.
- Бан: Игрок может быть забанен. Проверьте ваш список банов или базу данных на наличие его идентификаторов.
Клиент вылетает при подключении
- Ресурс на сервере отправляет некорректные данные или имеет ошибку клиентского скрипта, которая приводит к вылету клиента.
- Решение: Отключайте недавно добавленные ресурсы по одному, чтобы выявить проблемный. Проверьте консоль сервера на наличие ошибок во время подключения клиента.
- Убедитесь, что клиент RedM игрока обновлён.
Ошибки «Could not download file»
- Сервер пытается отправить большой файл (например, потоковый ассет), который превышает лимиты передачи, или соединение нестабильно.
- Решение: Уменьшите размер потоковых ассетов, используйте CDN/внешний хостинг для больших файлов, если это поддерживается, или попросите игрока повторить подключение.
Проблемы с базой данных (MySQL / oxmysql)
Большинство ролевых фреймворков RedM используют MySQL для постоянного хранения данных. Самый распространённый коннектор базы данных — oxmysql.
Ошибки сбоя подключения
Если oxmysql (или другой коннектор MySQL) не может подключиться, проверьте следующее:
# Typical oxmysql connection string in server.cfg
set mysql_connection_string "mysql://user:password@host:3306/database_name?charset=utf8mb4"
| Ошибка | Решение |
|---|---|
ECONNREFUSED или «Connection refused» |
Сервер MySQL не работает, неправильный хост/порт, или сервер MySQL не принимает внешние подключения. Проверьте хост, порт и что ваш сервер базы данных в сети. |
ER_ACCESS_DENIED_ERROR |
Неправильное имя пользователя или пароль в строке подключения. Дважды проверьте учётные данные в панели хостинга вашей базы данных. |
ER_BAD_DB_ERROR |
База данных с таким именем не существует. Сначала создайте базу данных через панель управления базой данных (phpMyAdmin и т. д.). |
ETIMEDOUT |
Сервер базы данных недоступен. Проверьте, нет ли правил брандмауэра, блокирующих подключение, или правилен ли хост базы данных. |
| «Too many connections» | База данных достигла максимального лимита подключений. Это может произойти, если ресурсы неправильно закрывают подключения или лимит слишком низкий. Перезапустите сервер и проверьте параметр max_connections вашего MySQL. |
localhost или 127.0.0.1 в качестве хоста. Если они на разных серверах, используйте IP-адрес сервера базы данных и убедитесь, что пользователь MySQL имеет привилегии удалённого подключения.
Отсутствующие таблицы или ошибки схемы
Ролевые фреймворки часто требуют настройки таблиц базы данных, прежде чем они смогут функционировать:
- Проверьте документацию фреймворка или репозиторий GitHub на наличие файлов импорта SQL (часто называемых
database.sql,schema.sqlили подобными). - Импортируйте файл SQL в вашу базу данных с помощью phpMyAdmin или клиента MySQL.
- Некоторые фреймворки автоматически создают таблицы при первом запуске. Убедитесь, что пользователь базы данных имеет привилегии
CREATE TABLE.
Проблемы с производительностью
Если ваш сервер RedM испытывает лаги, низкий тикрейт или общую низкую производительность:
Выявление проблем с производительностью
Проверьте консоль сервера на наличие предупреждений о производительности. Серверы RedM нацелены на тикрейт около 30–64 тиков в секунду. Вы можете отслеживать это с помощью:
- Панель txAdmin: Если txAdmin доступен, она показывает метрики производительности сервера в реальном времени.
- Консоль сервера: Следите за предупреждениями «slow tick» или «resource hitch».
- Команда resmon: Введите
resmon 1в консоли сервера (или консоли F8), чтобы включить монитор ресурсов, который показывает время CPU на каждый ресурс.
Распространённые решения проблем с производительностью
| Проблема | Решение |
|---|---|
| Высокая загрузка CPU конкретным ресурсом | Используйте resmon 1 для выявления ресурса. Рассмотрите замену его более оптимизированной альтернативой или обратитесь к разработчику ресурса. |
| Загружено слишком много ресурсов | Каждый ресурс потребляет ресурсы сервера. Проверьте свой список ресурсов и удалите все неиспользуемые или избыточные. |
| Узкое место в запросах к базе данных | Медленные или неиндексированные запросы к базе данных могут вызывать подвисания сервера. Проверьте предупреждения о медленных запросах oxmysql в консоли. Добавьте индексы к часто запрашиваемым столбцам. |
| Лаги из-за большого количества игроков | Уменьшите sv_maxclients до уровня, который может выдержать оборудование вашего сервера. Рассмотрите обновление вашего тарифного плана хостинга для получения большего количества ресурсов. |
| Лимиты сущностей OneSync | Слишком много заспауненных сущностей (NPC, транспорт, объекты) может снижать производительность. Используйте ресурсы, которые очищают неиспользуемые сущности. |
| Утечки памяти | Некоторые плохо написанные ресурсы со временем приводят к утечкам памяти. Отслеживайте использование RAM сервера в GPanel. Регулярные перезапуски сервера (каждые 6–12 часов) могут смягчить это. |
Рекомендуемые практики
- Планируйте автоматические перезапуски каждые 6–12 часов с помощью функции расписания GPanel или txAdmin, чтобы очищать накопленные проблемы с памятью и сущностями.
- Поддерживайте ресурсы в актуальном состоянии, чтобы пользоваться исправлениями и оптимизациями производительности.
- Избегайте дублирования функциональности — не запускайте два ресурса, делающих одно и то же (например, две системы погоды).
- Тестируйте новые ресурсы на тестовом сервере (или с малым количеством игроков) перед развёртыванием на основном сервере.
- Регулярно отслеживайте метрики сервера через GPanel или txAdmin, чтобы выявлять проблемы на ранней стадии.
Общие советы по устранению неполадок
- Всегда читайте вывод консоли сервера. Почти каждая ошибка включает сообщение в консоли, которое говорит вам, что пошло не так и где.
- Перезапускайте сервер после изменений конфигурации. Большинство изменений в
server.cfgтребуют полного перезапуска сервера, чтобы вступить в силу. - Отключайте ресурсы по одному, чтобы изолировать проблемы. Закомментируйте строки
ensureвserver.cfgс помощью#. - Сохраняйте резервные копии рабочих конфигураций перед внесением изменений. Загружайте ваш
server.cfgи базу данных перед крупными обновлениями. - Проверяйте форумы и документацию Cfx.re на docs.fivem.net для официальной документации, применимой как к FiveM, так и к RedM.
- Проверяйте совместимость ресурсов с версией вашего сервера. Ресурсы, созданные для старых версий, могут не работать с текущими сборками RedM.
Похожие статьи
- Руководство по настройке сервера RedM — Лицензионные ключи, конфигурация server.cfg, управление ресурсами и подключение.
- Как найти IP-адрес и порт вашего сервера
- Как загружать файлы через SFTP
- Начало работы с вашим новым сервером
Нужна помощь?
Всё ещё испытываете проблемы с сервером RedM? Создайте тикет в службу поддержки и включите любые сообщения об ошибках из консоли вашего сервера. Наша команда поможет вам диагностировать и устранить проблему.