قبل شراء جميع الموارد، أردت تجربة الموقع دون استخدام اسم نطاق، لذا استخدمت عنوان DNS IPv4 العام لتلك المثيلة كاسم مستضيف لـ Discourse وللدخول إلى الموقع، مثل: https://ec2_ip_address.us-west-1.compute.amazonaws.com/.
فتحت المنفذ 80 والمنفذ 443 على المثيلة عبر مجموعة الأمان، وتأكدت من إمكانية الوصول إلى هذه المنافذ من الشبكة العامة (تم الاختبار باستخدام خادم Python البسيط).
ولكنني أحصل على رسالة “لا يمكن الوصول إلى هذا الموقع” في المتصفح بعد تشغيل خادم Discourse باستخدام ./discourse-setup أو ./launcher rebuild app.
جربت أداة Discourse Doctor، وأظهرت النتائج التالية:
Discourse version at ec2-ip_address.us-west-1.compute.amazonaws.com: NOT FOUND
Discourse version at localhost NOT FOUND
لست متأكدًا بنسبة 100% مما إذا كان إعداد البريد الإلكتروني يعمل، لكنني أفترض أن مشكلة إمكانية الوصول إلى الموقع منفصلة عن مشكلة البريد الإلكتروني.
هل يمكن لأي شخص أن يوضح لي ما الذي ينقص أو كيف يمكنني تصحيح هذه المشكلة؟
حالة Not found (غير موجود) على اسم النطاق الخاص بك ترجح بشكل كبير إلى أن الموقع غير نشط بعد. ستحتاج إلى مشاركة المزيد من سجلات discourse-doctor.
هل اكتمل إعادة البناء/التهيئة (bootstrap) بنجاح؟
إذا كانت مثيل EC2 ضعيفة الموارد، فقد يستغرق discourse بعض الوقت (حوالي 3-5 دقائق في بعض الحالات).
ما يجب عليك التركيز عليه هو: إذا اكتمل البناء بنجاح، فاستخدم الأمر docker ps للتحقق من أن الحاوية تعمل وتستمع على المنافذ 80 و 443. بمجرد التحقق من ذلك، تكون المشكلة في مجموعة أمان AWS وليس في عملية التثبيت نفسها.
حالة Not found على اسم النطاق الخاص بك ترجح أن الموقع غير نشط بعد. ستحتاج إلى مشاركة المزيد من سجل discourse-doctor.
أتفق معك. سأنتبه لسجل البناء وأرى ما إذا كان هناك خطأ. كيف يمكنني تصحيح الأخطاء إذا وُجد خطأ في السجل؟
هل يمكنك التحقق من إمكانية الوصول إلى الخادم عبر اسم النطاق؟
نعم، قمت بالتحقق من اسم النطاق، ويمكن الوصول إلى المنافذ عبر المتصفح، وهما 80 و443. لقد أنشأت خادم HTTP بلغة بايثون يقدم بعض الملفات ببساطة، ويمكنني رؤية الاستجابة في المتصفح.
مضحك أنك ذكرت ذلك. هذا ما جذبني في البداية إلى هذا الموضوع. أساعد الكثير من الأشخاص في https://community.letsencrypt.org وفكرت أن هذا الموضوع قد يكون ضمن نطاق خبرتي للمساعدة. لتطبيق أي من أدواتي، أحتاج إلى معرفة أسماء النطاقات الحقيقية.
يمكنك تسجيل اسم نطاق مقابل 3 دولارات في Godaddy. إذا كانت قيمتك الزمنية تزيد عن 3 دولارات في الساعة، فيجب أن تسجل نطاقًا. وإذا لم تكن تملك 3 دولارات لتسجيل نطاق، فهذا يعني أنك لا تستطيع تحمل تكاليف خدمة EC2 أيضًا.
بالتأكيد! راجع أي شخص آخر يستخدم اسم نطاق .amazonaws.com ويستخدم Let’s Encrypt، ثم انتظر أسبوعًا. إذا لم ترغب في تسجيل نطاق، فستكون هذه هي الخطوة التالية التي أنصحك بتجربتها.