انتقل إلى المحتوى الرئيسي

حل مشكلات توجيه المضيف المحلي

معلومات

هل تواجه مشكلات في توجيه المضيف المحلي في Cursor؟ سيساعدك هذا الدليل على تشخيص وحل المشكلات الشائعة.

فهم المشكلة​

عندما لا تتمكن من توجيه منافذ المضيف المحلي، قد ترى أخطاء مثل:

  • "Unable to forward localhost:3000"
  • "spawn EACCES"
  • "Port already in use"
  • "Connection refused"

حلول سريعة​

1. التحقق من توفر المنفذ​

أولاً، تحقق مما إذا كان المنفذ قيد الاستخدام بالفعل:

# التحقق مما إذا كان المنفذ 3000 قيد الاستخدام
netstat -ano | findstr :3000

# إنهاء العملية التي تستخدم المنفذ (استبدل PID)
taskkill /PID <PID> /F

2. التحقق من إعدادات جدار الحماية​

تأكد من أن جدار الحماية لا يمنع الاتصال:

  1. افتح إعدادات جدار الحماية
  2. أضف Cursor إلى التطبيقات المسموح بها
  3. اسمح بالاتصالات الواردة على منافذ التطوير الخاصة بك

3. التحقق من تكوين الشبكة​

# اختبار اتصال المضيف المحلي
curl http://localhost:3000

# التحقق من واجهات الشبكة
ipconfig # Windows
ifconfig # macOS/Linux

المشكلات الشائعة والحلول​

المنفذ قيد الاستخدام بالفعل​

  1. العثور على العملية

    # Windows
    netstat -ano | findstr :<PORT>

    # macOS/Linux
    lsof -i :<PORT>
  2. إيقاف العملية

    # Windows
    taskkill /PID <PID> /F

    # macOS/Linux
    kill -9 <PID>

مشكلات الأذونات​

إذا واجهت أخطاء في الأذونات:

  1. التشغيل كمسؤول (Windows)

    • انقر بزر الماوس الأيمن على Cursor
    • حدد "تشغيل كمسؤول"
  2. إصلاح الأذونات (macOS/Linux)

    sudo chmod 755 /path/to/cursor

تكوين الشبكة​

  1. تحديث ملف المضيفين:

    # أضف إلى /etc/hosts أو C:\Windows\System32\drivers\etc\hosts
    127.0.0.1 localhost
  2. التحقق من ارتباطات المضيف المحلي:

    server.js
    // بدلاً من
    app.listen(3000);

    // استخدم
    app.listen(3000, '0.0.0.0');

استكشاف الأخطاء المتقدم​

استخدام منافذ مختلفة​

إذا كان المنفذ 3000 يسبب مشكلات:

const PORT = process.env.PORT || 3001;
app.listen(PORT, '0.0.0.0', () => {
console.log(`الخادم يعمل على المنفذ ${PORT}`);
});

تكوين الوكيل​

استخدام وكيل تطوير:

vite.config.js
export default {
server: {
proxy: {
'/api': {
target: 'http://localhost:3000',
changeOrigin: true,
secure: false,
}
}
}
}

مشكلات SSL/HTTPS​

لتطوير HTTPS:

const https = require('https');
const fs = require('fs');

const options = {
key: fs.readFileSync('key.pem'),
cert: fs.readFileSync('cert.pem')
};

https.createServer(options, app).listen(3000);

أفضل الممارسات​

  1. إدارة المنافذ

    • استخدم متغيرات البيئة للمنافذ
    • وثّق المنافذ المستخدمة
    • نفّذ منافذ احتياطية
  2. الأمان

    • لا تعرض منافذ التطوير للجمهور
    • استخدم HTTPS في الإنتاج
    • نفّذ سياسات CORS المناسبة
  3. سير عمل التطوير

    • استخدم أرقام منافذ متسقة
    • وثّق متطلبات الشبكة
    • حافظ على معالجة الأخطاء المناسبة

أدوات التصحيح​

فحص الشبكة​

  1. أدوات مطور المتصفح

    • افتح علامة تبويب الشبكة
    • راقب الطلبات/الاستجابات
    • تحقق من مشكلات CORS
  2. أدوات سطر الأوامر

    # اختبار اتصال TCP
    telnet localhost 3000

    # اختبار طلب HTTP
    curl -v localhost:3000

إدارة العمليات​

مراقبة العمليات قيد التشغيل:

# Windows
tasklist | findstr node
tasklist | findstr python

# macOS/Linux
ps aux | grep node
ps aux | grep python

عندما تفشل كل الحلول الأخرى​

  1. إعادة تعيين إعدادات الشبكة

    # Windows
    ipconfig /flushdns
    netsh winsock reset

    # macOS
    sudo dscacheutil -flushcache
    sudo killall -HUP mDNSResponder
  2. تنظيف بيئة التطوير

    • حذف node_modules
    • مسح ذاكرة التخزين المؤقت npm/yarn
    • إعادة تعيين خادم التطوير
تلميح

تذكر توثيق أي حلول تجدها لإعدادك المحدد!

الموارد ذات الصلة​