هذا ليس صحيحًا.
- الروابط التي أرفقتها في التعليق أعلاه كانت من
git blame. إليك أحدث إصدار للملف (السطر ذو الصلة مرتبط): discourse_docker/templates/web.ssl.template.yml at 247c71a1e45d32b0b814a8e9d5fdaa4faaf727b9 · discourse/discourse_docker · GitHub - كان تثبيت موقع صديقي الجديد منذ أسبوع. يقرأ السطر 37 من القالب أعلاه:
return 301 https://${DISCOURSE_HOSTNAME}$request_uri;ولكن في حاوية Discourse Docker، يقرأ كل من ملفه (وملفي)/etc/nginx/conf.d/outlets/before-server/20-redirect-http-to-https.confما يلي:return 301 https://<عنوان_موقع_المنتدى_الخاص_بك>؛لاحظ كيف تم تجريد$request_uri. هناك شيء ما يتسبب في اختفائه! (لا أعرف ما هو). - أجريت تجديدًا قسريًا محاكى هذا الصباح كجزء من تحقيقي. لقد فشل. ثم قمت بتغيير
/etc/nginx/conf.d/outlets/before-server/20-redirect-http-to-https.conf. لقد نجح!
هذا جيد في الواقع؛ سأقوم فقط بتعديل 20-redirect-http-to-https.conf يدويًا في كل مرة أقوم فيها بتحديث Discourse. بالنسبة لأولئك الذين يصادفون هذا التعليق، فإن الأمر الذي يجب تشغيله هو:
cat > /etc/nginx/conf.d/outlets/before-server/20-redirect-http-to-https.conf << 'EOF'
server {
listen 80;
listen [::]:80;
location ~ /.well-known {
root /var/www/discourse/public;
allow all;
}
location / {
return 301 https://<عنوان_منتدىك_هنا>$request_uri;
}
}
EOF
لست متأكدًا تمامًا مما يسبب هذا الفشل، ولكني أعرف أن تعديل ملف التكوين أعلاه يصلحه. ولكني قمت أيضًا بتعديل الإشعارات حتى لا تفشل تجديدات letsencrypt بصمت بعد الآن - حتى أتمكن من الحصول على بعض التحذير المسبق. اعتقدت أنك قد ترغب في معرفة ذلك!