دليل استكشاف الأخطاء وإصلاحها لمشاكل خادم 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، يجب على اللاعب إدخال كلمة المرور الصحيحة. - مورد القائمة البيضاء/قائمة السماح: إذا كان لديك مورد قائمة بيضاء مفعّل، يجب الموافقة على اللاعب قبل الاتصال.
- الحظر: قد يكون اللاعب محظورًا. تحقق من قائمة الحظر أو قاعدة البيانات بحثًا عن معرّفاته.
تعطل العميل عند الاتصال
- مورد على الخادم يرسل بيانات خاطئة أو يحتوي على خطأ في نص برمجي من جانب العميل يتسبب في تعطل العميل.
- الحل: عطّل الموارد المضافة مؤخرًا واحدًا تلو الآخر لتحديد المورد المسبب للمشكلة. تحقق من وحدة تحكم الخادم بحثًا عن أخطاء أثناء اتصال العميل.
- تأكد من أن عميل 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) لتفعيل مراقب الموارد، الذي يعرض وقت المعالج لكل مورد.
حلول الأداء الشائعة
| المشكلة | الحل |
|---|---|
| استخدام عالي للمعالج من مورد محدد | استخدم resmon 1 لتحديد المورد. فكّر في استبداله ببديل أكثر تحسينًا، أو تواصل مع مطور المورد. |
| عدد كبير جدًا من الموارد المحمّلة | كل مورد يستهلك موارد الخادم. راجع قائمة مواردك وأزل أي موارد غير مستخدمة أو زائدة عن الحاجة. |
| اختناق في استعلامات قاعدة البيانات | يمكن أن تتسبب استعلامات قاعدة البيانات البطيئة أو غير المفهرسة في تعليق الخادم. تحقق من تحذيرات الاستعلامات البطيئة في oxmysql في وحدة التحكم. أضف فهارس إلى الأعمدة المستعلم عنها بشكل متكرر. |
| عدد كبير من اللاعبين يسبب تأخرًا | قلّل sv_maxclients إلى مستوى يمكن لأجهزة خادمك التعامل معه. فكّر في ترقية خطة الاستضافة للحصول على موارد أكثر. |
| حدود كيانات OneSync | يمكن أن يؤدي وجود عدد كبير جدًا من الكيانات المُنشأة (شخصيات ومركبات وأشياء) إلى تدهور الأداء. استخدم موارد تقوم بتنظيف الكيانات غير المستخدمة. |
| تسرب الذاكرة | بعض الموارد ذات البرمجة الضعيفة تتسبب في تسرب الذاكرة بمرور الوقت. راقب استخدام ذاكرة الخادم في 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 الخاص بك؟ افتح تذكرة دعم وأرفق أي رسائل خطأ من وحدة تحكم خادمك. سيساعدك فريقنا في تشخيص المشكلة وحلها.