خطأ خاطئ لـ nginx proxy الخارجي و https

مرحباً

أنا أستخدم وكيل nginx خارجي أمام تثبيت Docker الأساسي لـ Discourse، كل شيء آخر يعمل بشكل رائع باستثناء أن مستخدمي تطبيق الهاتف المحمول لا يمكنهم تسجيل الدخول ولا يتم عرض مفاتيح واجهة برمجة التطبيقات (API) في لوحة تحكم المسؤول. بالإضافة إلى ذلك، تعطي وحدة تحكم Rails الأمر
request = ActionDispatch::Request.new({})
request.ssl? النتيجة هي false، لذا يبدو أن nginx الداخلي لـ Docker يعتقد أنه يتم استخدام http بدلاً من https. لقد قمت بتكوين app.yml على النحو التالي، هل هذا هو التكوين الصحيح؟ يعمل nginx على نفس الجهاز مثل Discourse وليس داخل Docker.

هل ترى أي أخطاء أو أوجه قصور واضحة في تكوين app.yml؟ يتعامل وكيل nginx الخارجي مع الشهادات وإنهاء SSL.

  • “templates/web.template.yml”

  • “templates/web.ratelimited.template.yml”

  • “templates/web.ssl.template.yml”
    #- “templates/web.letsencrypt.ssl.template.yml”

  • “templates/web.socketed.template.yml”

  • #expose:

  • #- “80:80” # http

  • #- “443:443” # https

env:

DISCOURSE_FORCE_HTTPS: true

DISCOURSE_TRUSTED_PROXIES: 127.0.0.1,172.17.0.1

كان الحل للمشكلة أبسط مما اعتقدت، لقد كان خطأً بشريًا بحتًا، لذا فإن الخادم بخير.

هل تود إخبارنا ما كان الحل؟

قام المستخدم بتنزيل برنامج Discord للجوال عن طريق الخطأ وحاول تسجيل الدخول إلى Discourse باستخدامه. لقد وجهته لتنزيل البرنامج الصحيح، وهو Discourse Hub، وتمكن من تسجيل الدخول إلى المنتدى. لم تكن هناك حاجة إلى أي تعديلات على جانب الخادم.

3 إعجابات