MaxReve نشر 1 نوفمبر 2015 أرسل تقرير نشر 1 نوفمبر 2015 أبحث عن أسهل وأسرع طريقة للحصول على اسم المضيف (Hostname) ورقم IP للجهاز الذي أستخدمه، فكيف أفعل ذلك؟ اقتباس
0 هشام رزق الله نشر 1 نوفمبر 2015 أرسل تقرير نشر 1 نوفمبر 2015 أسهل طريقة للحصول على اسم المضيف (Hostname) هي عن طريق استخدام الدالة gethostname من مكتبة socket حيث نعيّن النتيجة إلى متغير آخر كما في هذا المثال:require 'socket' hostname = Socket.gethostname أما بالنسبة للحصول على عناوين IP، فإذا كنت تستخدم روبي 1.9 فيمكنك استخدام مكتبة socket أيضًا للحصول على قائمة من العناوين المحلية، فالدالة ip_address_list تُرجع مصفوفة من كائنات AddrInfo والتي يمكنك اختيار ما تريده منها من العناوين بناءا على ما الذي تريد أن تفعله وعلى عدد الواجهات (interfaces) التي تملكها.مثال بسيط سوف نختار فيه أول عنوان non-loopback IPV4 وستكون النتيجة عبارة عن سلسلة نصية:require 'socket' ip_address = Socket.ip_address_list.find { |ai| ai.ipv4? && !ai.ipv4_loopback? }.ip_address المصدر اقتباس
0 Ali Haidar Ahmad نشر 1 أبريل 2022 أرسل تقرير نشر 1 أبريل 2022 يمكنك إنجاز ذلك كالتالي: host = `hostname`.strip # \n وإزالة اللاحقة shell الحصول على اسم المضيف من الشل puts host # إخراج اسم المضيف أو الطريقة الأبسط من خلال host_with_port في controller.rb: host_port= request.host_with_port اقتباس
السؤال
MaxReve
أبحث عن أسهل وأسرع طريقة للحصول على اسم المضيف (Hostname) ورقم IP للجهاز الذي أستخدمه، فكيف أفعل ذلك؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.