Rojan Mustafa

الأعضاء
  • المساهمات

    24
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو Rojan Mustafa

  1. تحتاج إلى كادر كبير من أجل إنجاح مثل هذه التطبيقات لأنها تشمل على العديد من الأقسام مثل: قسم التصميم قسم البرمجة والتطوير قسم التسويق قسم الدعم الفني الكول سنتر قسم المحاسبة قسم الموارد البشرية
  2. Secure Network Architecture: يقصد بهذا المفهوم بنية الشبكة فائقة الأمان أو بنية الشبكات الآمنة وهو مجال يجمع بين هندسة الشبكات وأمن المعلومات. تلبي هذه البنية جميع المتطلبات التنظيمية التي من شأنها حماية تبادل البيانات عبر الشبكة وتحد من احتمالية الحصول على المعلومات طالما أن جميع المكونات المعمارية تتم إدارتها وصيانتها ومراقبتها بشكل صحيح. على الرغم من أن هذه البنية تستخدم عدداً من طبقات الأمان (مثل التشفير والجدران النارية وخوادم Kerberos والمصادقة أو Authentication) التي يتم تنفيذها من خلال مجموعة متنوعة من الإجراءات الأمنية، إلا أنه لا يمكن لأي نظام توفير الحماية المطلقة للبيانات. بل يمكن ذلك فقط من خلال اليقظة المستمرة والتحديثات ومراقبة الأداء. Network Hardening: هو عملية تقوية الشبكة وحمايتها عبر التقليل من المخاطر التي قد تتعرض لها الشبكة وذلك من خلال القيام بعدد من الإجراءات وإتبع إستراتيجيات محددة مثل: تثقيف الموظفين - لا ضرر أبداً من تعليم الموارد البشرية وإجراء تدريب على أمن الشبكة كمتطلب لتحقيق الامان المستمر. يجب على المسؤولين إجراء مناقشات منتظمة مع الموظفين عند حدوث خرق كبير، موضحاً أحدث الطرق التي يمكن من خلالها مخترقي الإنترنت الوصول إلى الشبكات والأضرار التي يتسببون بها. كجزء من عملية التعليم، يمكن لقسم تكنولوجيا المعلومات إنشاء محاكاة حتى يتمكن الموظفون من رؤية كيفية حدوث هذه الهجمات من أجلتوظيف مساعدتهم لتحديد نقاط الضعف المحتملة. تبني ثقافة "صفر صقة": لا ينبغي الثقة المطلقة بأي شيء عندما يتعلق الأمر بأمن الشبكات، بحيث يمكن الإعتماد في الولوج إلى البيانات على المبدأ التالي: المصادقة، الولج، وتقسيم كل شيء. المقصود بالتقسيم هنا، عدم إعطاء كامل الصلاحيات حتى لو تمت المصادقة، بل يجب تقسيمها لتحقيق درجات أمن اعلى. أتمتة إدارة الإعدادات وتحديثات البرامج الثابتة: الإعدادات والتحديثات هي من أساسيات عمليات الحماية والامان، يجب التأكد من عملها بشكل مستقر وعدم الضرر بإعدادات التكوين السابقة عند إضافة ميزة جديدة إلى الشبكة، وذلك عبر القيام بأتمتمة هذه الإعدادات والتحديثات للتأكد من عدم لحاق ضرر بالشبكة. تأكد من تكوين جدار الحماية بشكل صحيح وأن جميع القواعد الخاصة بالولوج إلى الشبكة او العبور منها يتم تدقيقها بانتظام، تأمين نقاط الوصول والمستخدمين عن بعد، حظر أي منافذ شبكة مفتوحة غير مستخدمة أو غير ضرورية، تعطيل وإزالة البروتوكولات والخدمات غير الضرورية، تنفيذ قوائم الوصول وتشفير حركة مرور الشبكة. Implicit Deny: كما ذكرنا سابقاً، يجب تفعيل جدران الحماية وتحديد جميع القواعد الخاصة بالولوج إلى الشبكة، المقصود هنا بالـ "الرفض/النفي الضمني"، لا تسمح بولوج أي شيء لم يتم منحه إذناً محدداً وانتقائياً مسبقاً وتعامل معه على أنه مريب ومثير للشك. تسمح حدود الشبكة التي تتبع مفهوم الرفض الضمني فقط بعناوين IP محددة و/أو منافذ محددة، في حين يتم حظر غير ذلك. Analyzing Logs: غالبًا ما تلتقط السرفرات معلومات السجل الخاص بالنظام (syslog) من جميع أجهزة البنية التحتية المستخدمة في الشبكات مثل جدران الحماية وأجهزة التوجيه والمحولات والخوادم وأنظمة التشغيل الهامة الأخرى. ويجب مراجعة هذه السجلات للتحقق من سير تبادل البيانات بالشكل المطلوب، وعند حدوث أي خطأ محتمل في الشبكة، غالباً ما يمكن مراجعة هذه الأخطاء أيضاً في هذه السجل من أجل إستكشاف الخطأ وتصحيحه. Normalizing Log Data: يتم جمع السجلات من مختلف الأجهزة والخوادم المتصلة بالشبكة بالعديد من الأنماط والأشكال، الأمر الذي يجعل عملية جمع وتقييم هذه السجلات صعبة نوعاً ما لأن كل جهاز قد يعتمد على نظام أو بنية خاصة للسجلات. وهنا يأتي دور Log-Normalizer. يعتبر هو المسؤول عن تحويل السجلات إلى تنسيق موحد وقياسي بحيث يمكن للبرنامج المستخدم في تحليل هذه السجلات أن يفهمه بسهولة ويضعه في قاعدة بيانات السجل العادي بعد ذلك لفحصه. Correlation Analysis: هذا المصطلح عام نوعاً ما، وحتى لو كنا نتكلم في سياق الشبكات فهل المقصود هنا تحليل الترابط بين الأجهزة في الشبكة أم بين البيانات. بشكل عام يتم حساب الـ Correlation بين متغيرين أو أكثر لدراسة مدى التقارب بينها وكيفية تأثر واحدة بتغير الأخرى.
  3. يمكنك نقل قاعدة بيانات مهما كان نوعها إلى postgresql بإستعمال pgLoader وستجد الطريقة بالتفصيل في الرابط ادناه. النقل من قاعدة بيانات غير postgre إلى postgre. ولكن توجد طريقة أو لنقل خدعة أخرى لنقل البيانات من قاعدة إلى أخرى. لنفترض أنك على دراية كاملة بكيفية الإتصال بقواعد البيانات وإعدادات ملف database.yml ولديك بالفعل قاعدة بيانات رقم 1 وتريد نقل البيانات إلى قاعدة بيانات رقم 2. أولا قم بسحب هذه البيانات إلى ملف seeds.rb عبر إستخدام الجوهرة gem 'seed_dump' ثم وبكل بساطة قم بتشغيل الأمر: rake db:seed:dump وسيتم حفظ جميع البيانات في ملف الـ seeds يمكنك بالتأكيد حفظ جداول معينة دون الأخرى أو تحديد عدد السجلات التي تريد سحبها كالتالي: rake db:seed:dump MODELS=User LIMIT=1 وبعد أن يتم ذلك، اتصل بقاعدة البيانات رقم 2 وشغل الأمر: rake db:seed بالتأكيد يجب ان تكون أسماء الجداول والحقول متوافقة، ولكن يمكن تغيير هذه الأسماء من ملف seeds.rb بعد سحبها من قاعدة البيانات رقم1.
  4. أنصح بشدة بإستعمال HAML عوضا عن erb في إطار العمل Rails، من أجل سهولة العمل والقراءة وفهم الكود، حيث توفر HAML طريقة أبسط بكثير في كتابة الأكواد في صفحات الـ views. للتنصيب قم بإضافة الجوهرة التالية إلى ملف الـ gemfile gem "haml-rails", "~> 2.0" شغل الأمر: bundle install من أجل تحويل جميع ملفات erb إلى HAML قم بتشغيل الأمر: rails haml:erb2haml والآن كيف يبدو الأمر في كل من erb و HAML: erb: <%= '<%= مرحبا بالعالم %>' %> Haml: = '<%= مرحبا بالعالم %>' erb: <% @notes.each do |note| %> <h2><%= note.title %></h2> <p><%= note.content %></p> <% end %> HAML: - @notes.each do |note| %h2= note.title %p= note.content كما أنه توجد بعد المواقع لتحويل الـ HTML erb إلى HAML: http://htmltohaml.com
  5. لما لا تجرب ngrok وسيكون بإمكان الجميع من لديه وصول إلى الإنترنت (بطبيعة الحال) إلى الوصول إلى تطبيقك. سرفرات ngrok المجانية تعمل 8 ساعات وبعدها يجب تشغيلها مجددا، كما أنها بطيئة نسبيا لكنها مناسبة جدا لتجربة التطبيق لأن هناك بعض الخواص لا تعمل في localhost. يقوم ngrok بتعيين رابط خاص بالمنفذ الذي قمت بتحديده. يجب أولا تنصيب ngrok كالتالي: npm install ngrok -g وبعد تشغيل التطبيق سواء باستخدام أي من الأمرين: puma rails s سيكون بإمكانك تشغيل الأمر التالي من الترمينال: ngrok http 3000 ولكن تأكد من أن تطبيقك يعمل بالفعل على البورت 3000 ستحصل حينها على رابط التطبيق كالتالي مع ملاحظة ان هذه الطريقة ليست فقط للـ Rails:
  6. بالإضافة إلى إستعمال مكاتب I18n التي تستخدم للترجمة بشكل كبير في تطبيقات Rails حتى في المواقع أحادية اللغة (الغاية من الإستعمال في هذه الحالة هو عدم إدراج أي محتوى نصي ستاتيكي أو فقرات نصية في ملفات الـ views، بحيث يتم سحبها من ملفات yml وذلك لجعل الأكواد قصيرة ومقروءة). بالعودة إلى الموقع متعدد اللغات من المستحسن تخصيص روابط محددة لكل لغة، ويتم ذلك عبر إدراج gem 'route_translator' إلى ملف gemfile. ويجب عندها تعديل ملف routes لتصبح بالشكل: localized do resources :articles, only: [:index] do get :method, on: :collection end end بهذا الشكل يتم ترجمة الروابط إلى: localhost:3000/articles للغة الإنكليزية إذا كانت هي اللغة الإفتراضية التي تم تحديدها. localhost:3000/ar/articles إذا كانت اللغة المحددة ar. وهكذا. ولكن هذه الروابط لا تغير اللغة بل يجب تغييرها من ApplicationController كالتالي: before_action :set_locale_from_links private def set_locale_from_links locale_from_url = RouteTranslator.locale_from_params(params) || RouteTranslator::Host.locale_from_host(request.host) if locale_from_url old_locale = I18n.locale I18n.locale = locale_from_url end ensure I18n.locale = old_locale if locale_from_url end للمزيد عبر طريقة عمل هذا الـ gem يمكن مراجعة: https://github.com/enriclluelles/route_translator
  7. يوجد حل أفضل واسرع من تنصيب nodejs خصوصاً إذا لم يكن لديك وصول إلى السرفر: gem 'therubyracer', :platforms => :ruby أضف الـ gem أعلاه إلى ملف gemfile ثم قم بتشغيل الأمر: bundle install
  8. لا، إلا إذا كنت تريد من غوغل عدم أرشفة هذه الصفحة! noindex تمنع محركات البحث من أرشفة الموقع. nofollow تعني عدم الإنتقال إلى أي صفحة من هنا، وعدم فتح أي رابط موجود ضمن هذه الصفحة. noodp كانت تستعمل لجعل محرك البحث يعتمد على العنوان والوصف الموجود في الصفحة وعدم جلبها من مجلدات مثل Open Directory، تم الإستغناء عنها في 2017. لذلك يجب ان يكون هناك سبب "واضح" لإستخدام هذه الخواص الخاصة بالروبوتات، ناهيك أن إستعمالها في العديد من الصفحات يضر الموقع من ناحية السيو.
  9. من الصعب جعل أقسام الموقع تظهر في محرك البحث ولكن هناك دائما ما "عليك" فعله عندما يتعلق الأمر بالسيو من أجل الحصول على فرصة، لأن محرك البحث هو من لديه القرار الأخير مهما فعلت. الأمر لا يتعلق بالبحث أو بشهرة الموقع، حيث أن 3 مواقع قمت بتصميمها ظهرت أقسامها في 3 أسابيع/شهر/شهر ونصف. وكانت كلها مواقع باللغة الإنكليزية ورغم إستخدام نفس البيئة والبنية باللغة العربية إلا أنها لم تحالفها الحظ. عليك التأكد من التالي: إستعمال روابط صديقة لأقسام الموقع، العنوان والوصف يجب جعله موافقا للسيو، والربط الداخلي بين الأقسام يجب أن يكون متواجدا. ولكن بحسب الخبرة أجد أن Structured Data والأكواد النظيفة وأداء الموقع من أقوى العوامل التي تساعد على ذلك.
  10. بما ان أن الخطوات ستتم إتخاذها "عند بناء الموقع" من المستحسن: التأكد من أن عناكب البحث بإمكانها أرشفة موقعك بسرعة، وأعني دون أخطاء عبر تحليل الأكواد لتكون موافقة لـ W3C. جعل الروابط صديقة لمحرك البحث http://www.example.com/blog/first-blog بدلاً من http://www.example.com/blog/1 التأكد من إستخدام Structured Data في الصفحة الرئيسية، صفحات المنتجات والمقالات والصفحات الهامة وذلك بالإعتماد على Schema Ld Json أو Microdata. تأكد من أن تكون الأكواد نظيفة من اجل تحسين الأداء. تأكد من إستخدام Canonical URL للتخلص من مشكلة المحتوى المتكرر. حاول تجنب هذه المشكلة من الأساس داخل الموقع لأن Canonical URL لا تحل المشكلة داخل المواقع ولكن فقط لدى محركات البحث. من الضروري جدا التأكد من ان جميع أشكال كتابة رابط الموقع تؤدي إلى نفس الصفحة، مثلا جميع الصيغ دون www يتم توجيهها 301 إلى www. وكذلك جميع الروابط او الصيغ دون https يتم إعادة توجيهها 301 إلى https://www في حال إستخدام SSL. لست مضطرا إلى إستخدام www في روابط موقعك، ولكن سواء إستخدمتها أم لا، يجب على جميع الروابط مشاركة ذات الصيغة. قم بضغط ملفات CSS و Javascript سواء داخل التطبيق أو ضمن سرفر الويب Apache/Nginx الربط مع مواقع التواصل الإجتماعي وتوفير Facebook Open Graph/Twitter Cards تاكد من توفير ملفات Sitemap/Robots.txt
  11. حسناً، هناك العديد من الطرق لجعل الموقع متعدد اللغات ويختلف الأمر إن كان الموقع ديناميكي أو ستاتيكي. في المواقع الستاتيكية ذات المحتوى الثابت يمكن ببساطة إنشاء صفحات مختلفة لكل لغة ووضع هذه الصفحات في المجلدات الخاصة بتلك اللغة. الأمر معقد نوعا ما في المواقع الديناميكية بسبب تحديث المحتوى بإستمرار وربطه مع قواعد بيانات، لذلك معظم المطورين يعتمدون على إنشاء جدول لكل لغة مثل جدول البلوغ، فقد نجد: BlogEn BlogAr هذه الجداول ستوفر المحتوى بلغة معينة وسيتم القراءة من الجدول بحسب اللغة المختارة من الزائر حيث إما يتم حفظ خيار المستخدم في الكاش أو ضمن قواعد بيانات إذا كان المستخدم مسجلا للدخول. يمكن أيضا الإعتماد على جدول واحد ولكن سيحتوي على المحتوى العربي والإنكليزي و..الخ. وهذا خيار غير جيد لأن القراءة من قواعد البيانات ستكون أبطأ نسبيا. قد لا تبدو مسألة توفير عدد من اللغات بالأمر السهل، ولكن عند الإعتماد على Web Frameworks مثل PHP Laravel أو Ruby on Rails فإن كل بيئة توفر مكاتب تجعل من الأمر بسيطا. رغم ذلك يمكن إستعمال ملفات ترجمة جاهزة إذا كان من الممكن التنبأ بالمحتوى أو إذا كان المحتوى ثابت، حيث يمكن الإعتماد على I18n لسحب الترجمة من الملفات التي تم إعدادها سابقاً. يمكن أيضا نسيان كل ما سبق إذا لم تكن مطور ويب أو لا تريد تكليف الوقت أو الجهد أو المال، بحيث يمكنك إضافة زر ترجمة مباشر من غوغل مثلا على موقعك، والآلة ستترجم الصفحة الحالية بحسب إختيار المستخدم، ولكنها ليست تجربة جيدة للمستخدم على الإطلاق.
  12. يمكنك الإتصال بـسرفر الـ VPS الخاص بك عبر طرقٍ عدة ولكن أفضلها وأسهلها هو الإعتماد على SSH مع PuTTY. يمكنك تحميل برنامج PuTTY من هنا. احفظ الملف التنفيذي EXE وقم بتشغيله. قد تتلقى تحذيراً بأنه لا يمكن التحقق من الناشر ولكن إذا قمت بتنزيل هذا البرنامج من مصدر جيد ، فقم بتشغيله. على الرغم من أننا لا يمكننا أن نشهد على خوادم الجهات الخارجية، إلا أن الرابط المقدم أعلاه هو بشكل عام مصدر موثوق لـ PuTTY. أدخل الإعدادات الخاصة بك كما في الصورة المرفقة. ادخل الـ IP الخاص بك في الخانة المخصصة، واترك باقي الخيارات إفتراضية كما هي. إضغط على زر Open لفتح الإتصال. إذا كانت هذه المرة الأولى التي تتصل بالسرفر، ستحصل على رسالة خاصة بإضافة المفتاح إلى الكاش الخاص بـ PuTTY، على أي حال إن كان الإتصال متكررا والسرفر الذي تتصل به آمن يمكنك قبول الإضافة. بمجرد فتح اتصال SSH ، من المفترض أن ترى الـ Terminal يطلب اسم المستخدم الخاص بك ، لذلك اكتب "root" (بدون علامات الاقتباس). ثم بعدها أدخل الباسوورد الخاص بمستخدم الـ root. لن تشاهد علامة الكتابة او حركة المؤشر عند كتابة الباسوورد. إذا لم تكن هناك رسائل خطأ، هذا يعني انه تم تسجيل الدخول بنجاح إلى الخادم الخاص بك كمستخدم root باستخدام بروتوكول SSH.
  13. المشكلة قد لا تكون في سرفر الويب أو في الإستضافة، هل جربت تشغيل الفيديو في متصفح فايرفوكس أحدث، هل يمكن توفير رابط للصفحة التي تحتوي على المشكلة حتى يتم معاينتها أو البحث في فيها بشكل أعمق، هل توجد أية إضافات خاصة بتشغيل الفيديو على المتصفح، هل يحصل هذا على جميع المواقع ام فقط موقعك؟ المشكلة قد تكون في إعدادات المتصفح، على كل حال يمكنك التأكد من إعدادات فايرفوكس لتشغيل ملفات الـ MP4 كالتالي: اكتب about:config في خانة الرابط في فايرفوكس وإضغط انتر إقبل رسالة التحذير للإنتقال إلى الإعدادات هناك إبحث عن media.windows-media-foundation.enabled قم بتغيير الوضع من true إلى false أو من false إلى true إبحث مجددا عن media.directshow.enabled قم بتعديل الحالة لتوافق القيمة التي احترتها في الخيار السابق عند ضبط هذه الإعدادات على false ، فإنك تقوم بتعطيل مشغل وسائط HTML5 الخاص بـ H.264 والذي يتضمن أيضا ملفات MP4. لذلك قد تختلف الإعدادات بحسب المشغل الخاص الذي تستخدمه كإضافة إلى فايرفوكس. إن كانت المشكلة لا زالت مستمرة يرجى التزويد بمعلومات تفصيلية وكما يرجى الإجابة على الأسئلة في بداية الجواب.
  14. بل أنت في العمر الصحيح لتعلم البرمجة والدخول في هذا المجال. أساسيات البرمجة يجب أن تكون مادة أساسية في المدرسة الإعدادية /6-9/ وهذا هو الحال في عدد من دول العالم. ولكن المهم أن تجيب على هذا السؤال قبل البدء: لماذا تريد أن تتعلم البرمجة؟ في رأيي لا تتعلم البرمجة الآن، بل تعلم الخوارزميات وقواعد المعطيات، ولا تحصر نفسك في كتابة اكواد بلغة برمجة معيبة بل تعلم بنية وآلية عمل هذه اللغات في المقام الأول. الخوارزمية هي الخطوات التي ترسمها إلى الحل والبرمجة هي الطريق الذي تسلكه لتنفيذ تلك الخطوات. وبالتأكيد هناك العديد من أفرع البرمجة لذلك قد يكون من الصعب ان تجد أي من هذه الأفرع تناسبك من الآن، لذلك تعلم الخوارزميات لأنها العامل المشترك بين جميع المشاكل سواء كانت برمجية، امنية، حسابية أو حتى في في حياتنا اليومية.
  15. هناك العديد من الطرق لتعديل محتوى الموقع والأمر يختلف إن كان الموقع ستاتيكياً أم ديناميكياً. موقع ستاتيكي: هكذا مواقع لا تحتوي على قواعد بيانات لذلك يكون التعديل مباشرة من ملفات الموقع التي تم رفعها على الاستضافة، أي تكون بتعديل ملفات الـ HTML ، CSS , Javascript. أي أن المحتوى يتم تعديله بشكل مباشر سواء من خلال CPanel أو أوامر الدوس إن كانت الاستضافة لا توفر CPanel أو يمكنك ببساطة إعادة رفع الموقع بعد تعديله مرة كون أن الموقع ستاتيكي. موقع ديناميكي: لا يمكن تعديل هذه المواقع إلا عن طريق نظام إدارة محتوى، لا يزال بإمكانك تعديل الملفات بشكل ستاتيكي كما في الحالة السابقة، ولكن تغيير أو تعديل في قواعد البيانات يتطلب لوحة تحكم يتم من خلاله إدارة الموقع بشكل عام. مواقع الإنترنت التي تأتي مع لوحة تحكم أسعارها ضعف المواقع الستاتيكية على الأقل. لذلك قبل التفكير بإجراء تغييرات يجب التأكد من نوع الموقع.
  16. هنالك العديد من وسائل الدفع الإلكتروني ولكن يفضل أن يكون الاختيار بحسب التطبيق والدولة وبيئة البرمجة من أجل سهولة الدمج وبالتأكيد الأمان. Paypal الأفضل من حيث السرعة والمرونة في عملية الدفع والأكثر شعبية. Stripe الأفضل من حيث الخدمة ويحقق نسبة امان أفضل للمبتدئين. Amazon Pay الأسهل من حيث الإستخدام. Shopify من بين الأرخص. هناك أيضا Braintree, Square, SecurePay وغيرهم ولكن من الضروري عند اختيار أي Gateway الأخذ بعين الإعتبار: الأمان: من الضروري مراعاة Payment Card Industry والعمل على تحقيق متطلباتها لقبول بطاقات الإئتمان. البيانات: من يحتفظ بالبيانات الخاصة بالعملاء عند تخليك عن هذه الوسيلة. بطاقات الكرت المقبولة: من الضروري التأكد من بوابة الدفع المختارة تدعم أكبر قدر من الكروت التي قد يستخدمها عملائك. دعم الجوال. النسبة التي يتم إقتطاعها عند الدفع أو الإشتراك. خدمة الدعم الفني. إذا كنت تستخدم ووردبريس فالأفضل هو بالترتيب مع مراعاة جميع ما سبق: Paypal Stripe Square Amazon Pay
  17. السرفر المشترك هو سرفر يخدم عدة تطبيقات على جهاز واحد. سرفر VPS هو سرفر خاص ولكنه سرفر افتراضي. الخادم المخصص أو Dedicated Server أيضا سرفر خاص ولكنه ليس افتراضي وجميع مكوناته متصلة فيزيائيا لتقدم أفضل اداء ممكن. بالطبع يمكنك بسهولة ان تعرف إن كان السرفر مشتركا ام خاصا، وأنتي بكلمة "خاص" سواء كانت VPS أو Dedicated. في السرفر الخاص يكون لديك IP للسرفر وبإمكانك الولوج إليه كـ root access ومن هناك يمكنك التأكد من التطبيقات التي تعمل على السرفر وحذفها وتنصيبها وإنشاء المستخدمين وتغيير كلمات المرور، ولما لا، فهو مخصص لك فقط. لذلك من الضروري الحصول على root access في أس سرفر خاص. الصعوبة قد تكمن في السرفر الخاص إن كان بالفعل مخصصا أم إفتراضيا لأن الفرق كبير في السعر بينهما لذلك من الضروري التأكد على ما حصلت عليه مقابل ما دفعته. ويمكنك إكتشاف ذلك عبر استخدام أكواد dmidecode بعد الولوج إلى السرفر قم بتشغيل الأمر: dmidecode | egrep -i 'manufacturer|product' إذا حصلت على نتيجة تشبه: Manufacturer: VMware, Inc. ProductName: VMware Virtual Platform فتأكد انك على سرفر افتراضي VPS وكلمة VMware تؤكد ذلك. أما إن حصلت على نتيجة كـ Manufacturer: Microsoft Corporation ProductName: Virtual Machine فإنت أيضا على VPS ربما إن حصلت على نتيجة Windows/Linux بشكل مباشر ستكون على Dedicated Server ولكن من الصعب التأكيد 100 فالمئة. يمكن ايضا فحص نوع الرام المستخدم: lspci إذا حصلت على Qumranet, Inc. Virtio memory balloon فإنك على VPS هناك العديد من الطرق لمعرفة أنك على VPS ولكن قد تكون الطريقة الوحيدة لإثبات العكس هي الثقة بشركة الإستضافة. طريقة أخرى للتأكد على أنك في VPS: قم بتشغيل الأمر ifconfig إذا حصلت على نتيجة مثل: venet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:127.0.0.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255 UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1 RX packets:99999 errors:0 dropped:0 overruns:0 frame:0 TX packets:99999 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:126223307 (120.3 MiB) TX bytes:2897538 (2.7 MiB) venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:6x.xxx.xxx.xxx P-t-P:6x.xxx.xxx.xxx Bcast:6x.xxx.xxx.xxx Mask:255.255.255.255 UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1400 Metric:1 فتأكد أيضا انك على VPS بسبب إستخدام venet0 مجددا الحصول على eth0 بدلا من ذلك لا يعني أنك على Dedicated Server
  18. الخبرة باتت أهم من الشهادة في الكثير من المهن والمجالات. لا تبحث عن الشهادة بل عن فرص التطوير والحصول على تجربة عملية في المجال الذي ترغب الدخول فيه. مع إزدياد والتعليم الذاتي وأدواته التي تتطور كل يوم، باتت الشهادة عاملا ثانويا في الحصول على وظيفة أو فرصة عمل. النجاح في المهنة يساوي أكثر بكثير النجاح بالشهادة. لا توفر الشهادة بالضرورة المهارات التي تحتاجها للوظيفة التالية التي ستمتلكها. ولكنها الدليل الأول على القدرة على التأقلم في هذه المهنة وتطوير الذات والحصول على فرصة حقيقية من شأنها الإبتكار. ولكن دعونا لا ننسى أن الخبرة العامل الأول الذي تطلبه الشركات في العالم. هناك بعض الوظائف حيث تتفوق الخبرة على التعليم والعكس صحيح. في المبيعات ، على سبيل المثال ، فإن الحصول على سجل حافل بالدولارات التي يتم جلبها إلى الشركة سوف يفوق أي شهادة. وبالمثل ، في مجال التكنولوجيا والهندسة ، قد تمنحك شهادة جامعية حديثة تتكون من دراسة أحدث التطورات فرصا أكبر من الشخص ذو الخبرة في مجالك. في المقابل، تقدر المجالات المهنية بشكل عام الخبرة أكثر من التعليم لأسباب واضحة. نوع الشهادة أيضا ستلعب دوراً، الشهادات من جامعات ومؤسسات مرموقة تعطيك فرصا أكبر حتى لو كنت حديث التخرج. ما أنصحك به هو العمل على إكتساب الخبرة أكثر من الحصول على شهادة، ويعتمد ذلك بشكل كبير على المجال الذي ترغب بالدخول إليه وعلى خططك المستقبلية. يمكنك أن تعوض الشهادة مثلا بتدريب مهني لدى أحد الشركات. أو العمل على مشروع من منزلك تعرضه على الشركات التي تتقدم إليها. بالتوفيق.
  19. سؤال صعب دون شك، يمكنني أن أكتب عن سلبيات ومميزات وصعوبات وفرص ومستقبل الفرعين حتى يوم الغد، ولكن يجب أن تكون الإجابة بسيطة عندما تمنح نفسك 3 ثواني فقط للتفكير!. لأن كلا الفرعين يتطلبان شغفا كبيرا وأبحاثا عميقة عند دراستهما لذلك يتوجب الإلمام أولا قبل التقدم وذلك سيساعدك على الإبتكار إذا إخترت الطريق الصحيح الذي تجده مناسبا. دون شك، يحتاج أي تطبيق تم تطويره باستخدام تقنيات الذكاء الاصطناعي إلى مراجعة تقييم الأمن المعلوماتي قبل إعتماده. في المقابل، باتت خوارزميات الذكاء الإصطناعي جزءاً أساسياً من الأمن المعلوماتي من أجل إكتشاف التهديدات بل والتنبؤ بها قبل حدوثها. بالنظر إلى السوق في الوقت الراهن، كلا المجالين لديهما مساحة كبيرة وفرص متساوية تقريبا، ولكن قد يختلف ذلك من بلد إلى آخر بطبيعة الحال لأن الذكاء الإصطناعي يتطلب بيئة متطورة نوعا ما أو لنقل فرصاً تطبيقيةً. من وجهة نظري، وفي محاولة الإجابة على سؤالك، هناك الكثير من الأشخاص الذين يجيدون البرمجة والتصميم انتقلوا الى عالم الذكاء الاصطناعي وأضافوا قيمة هائلة إلى الأمن السيبراني. آمل أن يساعد هذا ، كل التوفيق!
  20. بالتأكيد من الضروري جدا الحصول على خدمة ايميلات آمنة وسربعة وليست فقط رخيصة أو "مجانية". نعم، عندما يتعلق الأمر بالإيميلات فلا تحصر نفسك بشركات الاستضافة أو مزودي خدمات الدومين. شركة Zoho من أفضل مزودي خدمة الايميلات وتوفر 5 إيميلات مجانية مساحة كل منها 5 جيغابايت مدى الحياة للدومين الخاص بك. إعداداتها بسيطة جدا وآمنة، كما يمكنك رفع الخطة بتكلفة 1 دولار شهريا لكل مستخدم. عندما ترفع الخطة الى المدفوعة ستوفر zoho العديد من الميزات الخاصة بإرسال واستقبال الايميلات وأيضا إمكانية إدارة المراسلات عبر تطبيقات الجوال. في الحقيقة تعاملك مع العديد من شركات الدومين والاستضافة ولكن بمجرد التجربة مع زوهو، انتهت كل مشاكل الايميل بما تتميز به من سرعة وأداء وأمان.
  21. يعتمد ذلك على عدة عوامل في الحقيقة، نعم 80 بالمئة من المواقع حاليا تعمل على بيئات PHP ولكن أليس هذا الرقم العالي مرتبط بـ Wordpress يجب أخذ العديد من المتغيرات بعين الاعتبار عندما يتم إتخاذ مثل هذا القرار، علما أنه ليس قرارا حاسما فيمكنك تجربة اللغتين بشكل عملي وتجد أي منهما تناسبك اكثر. في الحقيقة لا يوجد ما يمكنك فعله في أحد هذه اللغات ولا يمكنك فعله في اللغة الأخرى. ولكن لكل منها ميزاته وعوامله، قبل أن نبدأ: ما هي ابرز المواقع التي استخدمت فيها لغة الـ PHP؟ Yahoo, Facebook, canva, Wikipedia, Tumblr, Flickr Wordpress ما هي ابرز المواقع التي استخدمت فيها بيئة Ruby o Rails؟ Basecamp, Aribnb, GitHub, Shopify, Slideshare, Urban Dictionary تويتر ايضا بدأت من هذه اللغة ولكنها تتحول الآن تدريجيا الى الـ Java يوجد فارق يجب أخذه بعين الاعتبار: لغة PHP تعمل في العديد من التطبيقات وليس فقط تطبيقات الويب، فهي تملك العديد من Frameworks مثل: CodeIgniter، laravel, Symfony, CakePHP, Phalcon يمكنك استخدام واختيار أي منها بحسب العمل الذي تريد القيام به. عندما يتعلق الأمر بالـ Ruby فلا توجد العديد من الخيارات بل قد يقتصر الأمر على Rails Framework ولكن الى جانب ذلك يوجد Sinatra, Padrino, Cuba, Roda وكلها بيئات صغيرة ولكن شهرة الروبي تاتي فقط مع Rails باعتباره واحدة من أوائل البيئات لتطوير الويب مستخدمة OOP و MVC لتنشأ بعضها العديد من البيئات مثل Laravel PHP الذي يعتبر نسخا ممتازا من الـ Ruby on Rails ولكنه PHP حتى إصدار Laravel7 كان الـ يمكن القول أن Rails أسرع من Laravel ولكن لنقل ان كلاهما ممتاز من هذه الزاوية، وليكن الاختيار سواء ان كانت لديك خبرة برمجية سابقة أم لا لأن تعلم Rails لن تكون بسهولة اي من بيئات PHP. Rails يتطلب دائما عدد أقل من الاكواد لإنجاز مشروع ما بسبب بنيته المتناسقة وتوفر Gems الذي يتعبر واحد من أهم الاسباب التي قد ترجح هذه الكفة ناهيكم عن الـ Syntax الخاص بالـ Rails الذي يجعل مراجعة المشروع سلسا ومرنا أكبر. من ناحية الحماية والامان Rails توفر أدوات افضل للقيام بالمطلوب ولكن تحقيق ذات المستوى من الامان يتطلب اسطرا أكبر، أما في الروبي فعليك ان تبذل جهدا أكبر لتعلم استعمال هذه الادوات بالشكل الصحيح. روبي منتشر بشكل أكبر في اليابان وامريكا اذا كنت تفكر بإنشاء موقع تجارة الكترونية فانسى كل ما سبق وابدأ من PHP أما اذا كنت تفكر بـ REST APIs فابدأ من Ruby
  22. هناك 3 انواع أساسية للاستضافة عندما يتعلق الأمر بمواقع الانترنت: الاستضافة المشتركة، الاستضافة الخاصة على سرفر سحابي، الخادم المخصص 1. الاستضافة المشتركة Shared Hosting الاستضافة المشتركة هي واحدة من خطط الاستضافة التي تقوم خلالها شركات الاستضافة بخدمة مواقع ويب متعددة لكل منها دومين خاص ولكن باستخدام خادم واحد فقط. وبالتالي ، تشارك هذه المواقع جميع موارد الخادم المتاحة من وحدة المعالجة المركزية إلى ذاكرة الوصول العشوائي بين بعضها البعض. على الرغم من أن الاستضافة المشتركة هي أرخص نوع من الاستضافة، إلا أنها ليست فكرة جيدة لمواقع الويب التي تحتوي على آلاف الزوار يوميًا كما هو الحالة لديك لأن السعر الرخيص يأتي دائما مع بعض القيود. الاسعار تبدأ من 2 دولار شهريا 2. لاستضافة الخاصة على سرفر سحابي/افتراضي او كما يسمى Virtual Private Server الخاص الافتراضي أو VPS هو شيء بين الاستضافة المشتركة والخادم المخصص ولكنه أكثر مرونة وقوة لأن جميع الموارد المتاحة على الخادم مخصصة لموقعك فقط. يوفر VPS العديد من الميزات والقدرات مثل root access وعنوان IP الخاص. أي أنه يمكنك إدارة جميع الموارد المتوفرة في السرفر لاستخدامها بحكمة والاستفادة بشكل أفضل من النطاق الترددي المتاح Bandwidth وذاكرة الوصول العشوائي ووحدة المعالجة المركزية في أفضل نهج ممكن على عكس الاستضافة المشتركة. علاوة على ذلك ، يمكنك دائمًا تحديد الموارد الذي يناسب متطلبات الموقع الخاص بك. على سبيل المثال، قمت باسئجار سرفر سحابي VPS بتكلفة 5 دولار شهريا مع ذاكرة وصول عشوائي 1 جيغابايت ومعالج واحد مع مساحة تخزينية 25 جيغابايت SSD ولكن بما أني املك صلاحية الوصول الكاملة الى السرفر /root access/ فقد قمت ببعض الاعدادات ورفعت قدرة الرام الى 3 جيغابايت. التكلفة المتوسطة لهذا النوع من الاستضافة هي 4 دولار شهريا لسرفر 1 جيغا رام و 1 معالج. 3. الخادم المخصص Dedicated Server يعتبر هذا النواع من اقوى انواع الاستضافة لأنه يمنحك حاسوب خاص بقدرات معينة وليس حاسوب افتراضي. بمعنى أن جميع مكونات الحاسوب تكون متصلة مع بعضها بشكل مباشر كحاسوب مكتبي وهذا ما يوفر القوة في الأداء. أما الحاسوب الافتراضي فإن أجزاءه غير متصلة مع بعضها البعض فيزيائيا. التكلفة تبدأ من 40 دولار شهريا مع رام 4 جيغا ومعالج 4 نواة. من غير المنطقي استئجار سرفر او خادم مخصص بموارد أقل من هذه. كيف اختار؟ يعد اختيار خطة الاستضافة قرارًا حاسمًا لأنه سيؤثر على مستوى أداء الموقع بشكل عام. حسنًا، الاستضافة المشتركة تفي بالغرض دائما الى الوقت الذي تتلقى فيه رسالة: Your Server Is Down! النوعين الآخرين من الاستضافة لا يتعلق الأمر بالمال فقط، بل من يمكنه إدارة هذا السرفر الخاص سواء كان افتراضيا أو مخصصا. يمكنك الحصول على Managed VPS ولكن التكلفة ستكون الضعف. أو يمكنكك التعاقد مع أحد مديري السرفرات للقيام بجميع الإعدادات الخاصة بـ VPS وإطلاق الموقع في المرة الاولى والامور ستكون اسهل لاحقا. واحدة من أفضل الطرق عند تحديد الخيار المناسب لك هي أخذ حجم موقع الويب الخاص بك في الاعتبار. عدد الزوار الذين تتوقعهم (على سبيل المثال ، من المقبول الانتقال إلى خادم مشترك إذا كان موقعك على الويب يحتوي على مجموعة من الزوار يوميًا بين 500 و 5000 زائر). ومع ذلك ، فمن المستحسن أيضًا استخدام VPS في المقام الأول حتى في البداية إذا كنت تدير مواقع لإدارة الأعمال أو التعليم أو العقارات أو التجارة الإلكترونية لأنه على الرغم من أنك قد لا تحصل على العديد من الزوار في الأيام الأولى ، ولكن هذا العدد القليل من الزوار يستحق أيضًا الحصول على أداء عالي وأفضل خدمة ليتحول الى عميل، أوليس ذلك هو الهدف الاساسي هنا!؟ أما بالنسبة لطريقة اختيار الشركة المقدمة للإستضافة بعد ان اتخذت قرارك بالنوع الذي تريده، فيمكنك بالتأكيد الاستفادة من إجابة الاستاذ محمد سعيد. ولكن اذا كنت قد اتخذت قرارك بالانتقال الى VPS فإننا ننصح بشدة الاستئجار من شركة تستضيف خوادمها الافتراضية بالاعتماد على التقنيات السحابية.