بعد تثبيت Discourse لا يمكن الوصول إليه عبر المتصفح

@رافائيل في المطالبة $letsencrypt_status == “ENTER to skip”

@ستيفن لقد قمت للتو بتشغيل آلة افتراضية جديدة بنظام CentOS 8، وقمت بالتبديل من firewalld إلى استخدام iptables، وقمت بتثبيت Docker، ثم اتبعت خطوات تثبيت Discourse من البداية كما هو موضح في INSTALL-cloud.md. حصلت على نفس النتيجة — انقطاع فوري للاتصالات على المنفذ 80 و443. أنا لا أستخدم Let’s Encrypt. فقط ضغطت ENTER عندما ظهرت لي تلك المطالبة.

[root@disctest discourse]# telnet localhost 80
Trying ::1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.
[root@disctest discourse]# ls shared/standalone/ssl/
disctest.nmr.mgh.harvard.edu.cer      disctest.nmr.mgh.harvard.edu_ecc.key
disctest.nmr.mgh.harvard.edu_ecc.cer  disctest.nmr.mgh.harvard.edu.key

[root@disctest discourse]# ls -l shared/standalone/ssl/disctest.nmr.mgh.harvard.edu.cer
-rw-r--r--. 1 root root 0 Sep  4 16:06 shared/standalone/ssl/disctest.nmr.mgh.harvard.edu.cer

[root@disctest discourse]# tail -1 shared/standalone/log/var-log/nginx/error.log
2020/09/04 20:20:37 [emerg] 6186#6186: cannot load certificate "/shared/ssl/disctest.nmr.mgh.harvard.edu.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)

يبدو أن disctest.nmr.mgh.harvard.edu ليس عنوان DNS صالحًا. هل هذا هو اسم المضيف؟ هل يستضيفه كتلة الشبكة العامة التابعة لجامعة هارفارد؟

هل تستخدم الأفق المنقسم؟

إنه موجود في شبكة خاصة مع DNS داخلي.

لا، ليس لدي أي فكرة عن ماهيته.

حسنًا، السبب في أن التثبيت القياسي لم يتصرف كما هو متوقع هو أنك لا تستخدم إعدادًا نموذجيًا.

إذا كان سجل DNS الخاص بك صالحًا داخليًا فقط، فهذا يعني أنك تستخدم DNS مقسمًا. لا توجد طريقة لـ Let’s Encrypt لإجراء التحقق من DNS، وهي الطريقة التي يقرر من خلالها إصدار شهادتك. إعدادك غير شائع جدًا خارج الشبكات الأكاديمية.

يُعد DNS المقسم إعدادًا متقدمًا، ولا تم تصميم ./discourse-setup لتلك الحالات. إذا ألقيت نظرة على هذا المستند، فستجد أن التثبيت المخصص للمبتدئين ليس موجهًا لك.

في هذه الحالة، ستحتاج إلى تعديل ملف app.yml يدويًا وإزالة قالب Let’s Encrypt.