اذهب إلى المحتوى

السؤال

نشر

اريد فتح الموقع الخاص بي (localhost server ) على الهاتف لكن لا يقوم بالفتح عالرغم من انني على نفس اتصال الشبكة في كلا الجهازين ..

هذا الرابط الذي احاول فتحه :

http://192.168.8.186:8080/

لكن اذا قمت بادخال نفس هذا الرابط على الحاسب (الذي اعمل عليه المشروع) يعمل دون مشاكل 

Recommended Posts

  • 0
نشر

حاول تحديد عنوان الاستماع للخادم ليطابق جميع الواجهات الشبكية المتاحة على حاسبك لتتمكن جميع الأجهزة على نفس الشبكة المحلية LAN من الوصول للمنفذ المحدد، إذا كنت تستخدم Express حاول تحديد العنوان كالتالي

app.listen(8080, '0.0.0.0');
                 ^^^^^^^^^

 

  • 0
نشر
بتاريخ 34 دقائق مضت قال Hassan Hedr:

حاول تحديد عنوان الاستماع للخادم ليطابق جميع الواجهات الشبكية المتاحة على حاسبك لتتمكن جميع الأجهزة على نفس الشبكة المحلية LAN من الوصول للمنفذ المحدد، إذا كنت تستخدم Express حاول تحديد العنوان كالتالي


app.listen(8080, '0.0.0.0');
                 ^^^^^^^^^

 

ايضا لم يعمل للاسف 

const PORT = process.env.PORT || 8080;
app.listen(PORT ,'0.0.0.0', () => {
  console.log(`Listening on port ${PORT}`)
})

 

  • 0
نشر

فكرة فتح الـ local host على الهاتف او الأجهزه الأخرى المتصلة بنفس الشبكة سهل تطبيقها مع بعض التعديلات البسيطة حيثُ في البداية

تأكد من فتح ال cmd أو موجه الأوامر الخاص بك ثم كتابة الأمر ' ipconfig ' ليظهر الآي بي الخاص بشبكتك  IPv4 Address فهو آي بي متغير و ليس ثابت و لكن في ذلك الشرح سأشرح على الآي بي الذي ظهر لي في موجه الأوامر

لتصفح الموقع على شبكتك يختلف الأمر التالي من بيئه تطوير لاخرى لكنها بالنهاية نفس فكرة فتح السيرفر المحلي و سأستخدم python / django على سبيل المثال يمكن تشغيل السيرفر المحلي بالطريقة المعتاده python manage.py runserver و لكن الإختلاف هنا هو كتابة الآي بي الخاص بالشبكة بشكل عام بدل من الإكتفاء بتشغيل السيرفر على الجهاز المحلي ثم يليه المنفذ الذي تريد التشغيل عليه بحيث يكون كالتالي python manage.py runserver 192.168.1.105:8000 ثم اضغط Enter

قبل كتابة 192.168.1.105:8000 لتصفح الموقع الخاص بك في الحاسوب أو اي جهاز اخر متصل بالشبكه يجب إضافة عنوان الآي بي المتغير في تلك الحاله 192.168.1.105 إلى إعدادات الموقع في django على سبيل المثال يتم كتابة الآي بي داخل ALLOWED_HOSTS = ["192.168.1.105"] في ملف settings.py و من ثم يمكنك فتح الآي بي يليه رقم المنفذ 192.168.1.105:8000 على اي جهاز متصل بالشبكه لتصفح الموقع الخاص بك بسهوله

ملاحظه عامة : نفس الطريقه هي ذاتها مع اختلاف الأوامر مع بيئة تطوير أو تقنيه لآخرى لكنها نفس الفكره العامه مع اختلاف الأسطر التي تكتب لتأتي بنفس النتيجه

* لا تنسى مراجعة الصور بالمرفقات

Screenshot 2022-02-28 114259.png

Screenshot 2022-02-28 114952.png

  • 0
نشر
بتاريخ منذ ساعة مضت قال bassam_ahmed_python:

فكرة فتح الـ local host على الهاتف او الأجهزه الأخرى المتصلة بنفس الشبكة سهل تطبيقها مع بعض التعديلات البسيطة حيثُ في البداية

تأكد من فتح ال cmd أو موجه الأوامر الخاص بك ثم كتابة الأمر ' ipconfig ' ليظهر الآي بي الخاص بشبكتك  IPv4 Address فهو آي بي متغير و ليس ثابت و لكن في ذلك الشرح سأشرح على الآي بي الذي ظهر لي في موجه الأوامر

لتصفح الموقع على شبكتك يختلف الأمر التالي من بيئه تطوير لاخرى لكنها بالنهاية نفس فكرة فتح السيرفر المحلي و سأستخدم python / django على سبيل المثال يمكن تشغيل السيرفر المحلي بالطريقة المعتاده python manage.py runserver و لكن الإختلاف هنا هو كتابة الآي بي الخاص بالشبكة بشكل عام بدل من الإكتفاء بتشغيل السيرفر على الجهاز المحلي ثم يليه المنفذ الذي تريد التشغيل عليه بحيث يكون كالتالي python manage.py runserver 192.168.1.105:8000 ثم اضغط Enter

قبل كتابة 192.168.1.105:8000 لتصفح الموقع الخاص بك في الحاسوب أو اي جهاز اخر متصل بالشبكه يجب إضافة عنوان الآي بي المتغير في تلك الحاله 192.168.1.105 إلى إعدادات الموقع في django على سبيل المثال يتم كتابة الآي بي داخل ALLOWED_HOSTS = ["192.168.1.105"] في ملف settings.py و من ثم يمكنك فتح الآي بي يليه رقم المنفذ 192.168.1.105:8000 على اي جهاز متصل بالشبكه لتصفح الموقع الخاص بك بسهوله

ملاحظه عامة : نفس الطريقه هي ذاتها مع اختلاف الأوامر مع بيئة تطوير أو تقنيه لآخرى لكنها نفس الفكره العامه مع اختلاف الأسطر التي تكتب لتأتي بنفس النتيجه

* لا تنسى مراجعة الصور بالمرفقات

Screenshot 2022-02-28 114259.png

Screenshot 2022-02-28 114952.png

قمت بالتجربة ايضا لم تحل المشكلة هذا ما فعلته عن طريق express :

2022-02-28.thumb.png.6b7d6a26eb47982300d32488befd4c7c.png 

  • 0
نشر
بتاريخ 20 دقائق مضت قال bassam_ahmed_python:

الخطوه التي اتخذتها صحيحة بالفعل يتبقى فقط :

  1. إضافة الآي بي 192.168.8.186 إلى ALLOWED_HOSTS أو ما يعادلها في إعدادات المشروع الخاص بك
  2. فتح الآي بي 192.168.8.186:8000 في المتصفح على أي جهاز متصل بالشبكة

 

app.use(cors({
  origin: '*'
}));
const PORT = process.env.PORT || 8080;
app.listen(PORT ,'0.0.0.0', () => {
  console.log(`Listening on port ${PORT}`)
})

قمت باضافة (*) لكي يتم السماح باي مصدر بالوصول ال localhost الخاص بي لكن ايضا لم تحل وقمت بتجربة اضافة ال ip الخاص بي ايضا لم يتغير شيء

بتاريخ 27 دقائق مضت قال Wael Aljamal:

توجه لحاسوبك في إعدادت الشبكة الخاصة ب wifi مثلاً (حسب اتصالك على الراوتر المنزلي) و حددها ك خاصة | private لتصبح مرئية للأجهزة على نفس الشبكة.

ايضا قمت بالتجربة 

621cbe467f1b7_2022-02-28(1).thumb.png.965ed6ce02f7012dee36feb1234b8666.png

  • 0
نشر
بتاريخ 9 دقائق مضت قال Samer Alashqar:

ايضا قمت بالتجربة 

تأكد من اتصال الهاتف و الحاسوب على نفس الشبكة،

ثم أدخل IP الحاسوب ضمن أي متصفح في التطبيق للاتصال على server الخاص بك، و اطلع رسالة مثلاً في الشاشة فتتأكد من أن المشكلة في الوصول للشبكة أم في التطبيق أو المخدم..

بعد تشغيل مخدم Express تجد أن وضه External network وهو IP+PORT استخدمه في التطبيق + IP غير ثابت بالضرورة يمكن أن يتغير مع كل اتصال للراوتر.

  • 0
نشر
بتاريخ 23 دقائق مضت قال Wael Aljamal:

تأكد من اتصال الهاتف و الحاسوب على نفس الشبكة،

ثم أدخل IP الحاسوب ضمن أي متصفح في التطبيق للاتصال على server الخاص بك، و اطلع رسالة مثلاً في الشاشة فتتأكد من أن المشكلة في الوصول للشبكة أم في التطبيق أو المخدم..

بعد تشغيل مخدم Express تجد أن وضه External network وهو IP+PORT استخدمه في التطبيق + IP غير ثابت بالضرورة يمكن أن يتغير مع كل اتصال للراوتر.

يعطيك العافية اخي حلت مشكلتي بالكامل بمجرد تغييري للمنفذ (PORT) من 8080 الى 80 هل استطيع ان اعرف لماذا عند تغييري للمنفذ عمل الموقع على الهاتف ؟ اول مرة يحصل معي هذا الشيء 

  • 0
نشر
بتاريخ الآن قال Samer Alashqar:

يعطيك العافية اخي حلت مشكلتي بالكامل بمجرد تغييري للمنفذ (PORT) من 8080 الى 80 هل استطيع ان اعرف لماذا عند تغييري للمنفذ عمل الموقع على الهاتف ؟ اول مرة يحصل معي هذا الشيء 

لأنه من المتعارف عليه أم المنفذ 80 هو الافتراضي لخدمات الويب وبروتوكول HTTP وفي حال تم تعديله يتوجب تغييره

  • 0
نشر
بتاريخ 4 ساعات قال Samer Alashqar:

يعطيك العافية اخي حلت مشكلتي بالكامل بمجرد تغييري للمنفذ (PORT) من 8080 الى 80 هل استطيع ان اعرف لماذا عند تغييري للمنفذ عمل الموقع على الهاتف ؟ اول مرة يحصل معي هذا الشيء 

أحيانا يتوقف المنفذ بسبب جدار النار fire wall لذلك يمكن السماح بالاتصالات على المنفذ 8080 بإتاحة المنفذ

ابحث عن Windows Firewall ثم advanced settings ثم إضافة Role جديدة نوعها port بقيمة 8080 

للمزيد: شرح من موقع مايكروسوفت

لتشغيل المخدم بواسطة node:

node server.js -p 3000 -a : --listen 192.168.1.100
                  port                ip

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...