تحرير بعد 1.5 ساعة: تم إصلاحه بإضافة الكود أدناه إلى ملف app.yml الخاص بي ضمن قسم الخطافات:
after_ssl:
# إخبار letsencrypt بالشهادات الإضافية التي يجب الحصول عليها
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: "-d mysite.me -d www.mysite.me -d forum.mysite.me --keylength"
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--fullchainpath/
to: "-d mysite.me -d www.mysite.me -d forum.mysite.me --fullchainpath"
تحرير 2: تجاهل كل ما يلي، ولكن سأتركه هنا للأشخاص المستقبليين.
للسياق الكامل: Set up Let’s Encrypt with multiple domains / redirects - #136 by 45thj5ej
تجاهل كل شيء
لست متأكدًا مما إذا كان هذا ينتمي إلى قسم الدعم، أو ربما التثبيت نظرًا لأنني تجاوزت عملية التثبيت، لذا أعتذر إذا لم يكن هذا في الموقع الصحيح. إذًا…
أستضيف Discourse على خادم افتراضي خاص. تم إعداد Let’s Encrypt. قمت بإعداد NGINX للاتصال بعنوان URL الخاص بالمنتدى الخاص بي. ثم قمت بتوجيه سجل DNS A على مزود النطاق الخاص بي إلى عنوان IP الخاص بـ Discourse VPS. يعمل بشكل رائع. ومع ذلك، عندما أضفت سجلات CNAME لـ www.mysite.me و mysite.me، أحصل على خطأ أمني عند زيارتها… اتصلت بمزود النطاق الخاص بي، الذي لديه SSL ممكّن، وقالوا هذا:
لا أفهم لماذا أحصل على مشكلة أمنية / عدم وجود HTTPS عندما يكون SSL ممكّنًا على مزود النطاق الخاص بي (والذي لن يتم استخدامه على أي حال لأنه لا يستضيف منتديات Discourse الخاصة بي) و Let’s Encrypt ممكّن على Discourse VPS الخاص بي.
تم إعداد NGINX الخاص بي كالتالي:
after_web_config:
- replace:
filename: /etc/nginx/nginx.conf
from: /sendfile.+on;/
to: |
server_names_hash_bucket_size 64;
sendfile on;
- file:
path: /etc/nginx/conf.d/forumsredirect1.conf
contents: |
server {
listen 80;
server_name mysite.me;
return 301 $scheme://forums.mysite.me/landing$request_uri;
}
- file:
path: /etc/nginx/conf.d/forumsredirect2.conf
contents: |
server {
listen 80;
server_name www.mysite.me;
return 301 $scheme://forums.mysite.me/landing$request_uri;
}
- file:
path: /etc/nginx/conf.d/forumsredirect3.conf
contents: |
server {
listen 80;
server_name forum.mysite.me;
return 301 $scheme://forums.mysite.me$request_uri;
}
إعدادات DNS الخاصة بي هي:
للعلم، الرابط المباشر
forums.mysite.me هو HTTPS/آمن.لجعل الأمر أكثر غرابة،
https://forum.mysite.me (بدون “s”) يظهر على أنه غير آمن على سطح المكتب، ولكن https://www.mysite.me لا يظهر على سطح المكتب، ولكنه يظهر على الهاتف المحمول… يبدو أن هناك مشكلة مع CNAMEs… نوعًا ما؟
عند استخدام مدقق SSL على CNAMEs، أحصل على:
“لا تتطابق أي من الأسماء الشائعة في الشهادة مع الاسم الذي تم إدخاله. قد تتلقى خطأ عند الوصول إلى هذا الموقع في متصفح الويب.”
ما الذي أفعله بشكل خاطئ هنا؟

