سلسلة الشهادات غير مكتملة: حل الشهادة الوسيطة المفقودة
· فريق CSR.plus

- •خطأ السلسلة يعني دائماً تقريباً أن الخادم يرسل الورقة دون الوسيطة التي تحتاجها المتصفحات للتحقق.
- •الحل ملف واحد مربوط: الورقة + الوسيطة بالترتيب الصحيح.
- •تحقق بفحوصات على غرار SSL Labs وبأمر openssl نفسه الذي سيشغله زوارك.
لماذا تنكسر السلسلة
تثق المتصفحات بالشهادة لأنها تثق بجذرها. شهادتك الورقية موقعة من وسيطة غير موجودة في مخزن الثقة بالمتصفح، لذا يجب على الخادم إرسالها أثناء المصافحة. إذا كانت الإعدادات تشير للورقة فقط، أو كان الملف المربوط بالترتيب الخاطئ، يفشل العملاء الذين لا يخزنون الوسيطة برسائل «سلسلة غير مكتملة» أو «unable to get local issuer certificate» أو NET::ERR_CERT_AUTHORITY_INVALID.
كيف تصلحها على Nginx وApache
نزّل حزمة السلسلة الكاملة من هيئتك (أو من نقطة الوسيطة في امتداد Authority Information Access للشهادة). اربط: cat yourdomain.com.crt intermediate.crt root.crt > fullchain.crt — الورقة أولاً ثم الوسيطة بالترتيب ثم الجذر أخيراً. في Nginx وجّه ssl_certificate إلى ملف fullchain؛ وفي Apache عيّن SSLCertificateChainFile (أو أدرج السلسلة في SSLCertificateFile). ثم أعد التحميل.
تحقق من الإصلاح
شغّل openssl s_client -connect yourdomain.com:443 -servername yourdomain.com -showcerts 2>&1 | grep -A1 "Certificate chain". يجب أن ترى الورقة تليها الوسيطة. يجب أن يطبع openssl verify -CAfile root.pem fullchain.crt «fullchain.crt: OK». أعد الاختبار بملف متصفح نظيف ومدقق سلسلة خارجي.
FAQ
لماذا تعمل في بعض المتصفحات ولا تعمل في أخرى؟
العملاء الذين جلبوا الوسيطة مؤخراً من سجل CT أو ذاكرة تخزين يمكنهم التحقق بدونها؛ الآخرون لا يستطيعون. الحل نفسه: أرسل السلسلة الكاملة.
هل يخفي CDN هذه المشكلة؟
لا — ينهي CDN TLS بشهادته الخاصة. إذا رفعت الورقة فقط، فسينقل نفس السلسلة المكسورة للزوار.
UptimeRobot
راقب SSL وحالة التشغيل مجاناً
يراقب UptimeRobot شهاداتك ونقاط الاتصال على مدار الساعة — 50 مراقباً في الخطة المجانية.
رابط تسويق بالعمولة — قد نحصل على عمولة دون أي تكلفة إضافية عليك.
أدوات SSL/TLS المجانية
تحقق وافحص شهاداتك في ثوانٍ.