SSL مجاني لأي موقع WordPress
نشرت: 2022-03-10إذا كان لديك موقع ويب للتجارة الإلكترونية ، فإن طبقة المقابس الآمنة (SSL) إلزامية لمعالجة بطاقات الائتمان بأمان. ولكن حتى إذا كنت لا تقوم بمعالجة المدفوعات ، فلا يزال يتعين عليك التفكير بجدية في بروتوكول HTTP الآمن (أو HTTPS) ، خاصة الآن بعد أن سأوضح لك كيفية إعداده بسرعة مجانًا. هيا بنا نبدأ.
ما هو SSL ولماذا يجب أن أهتم؟
باختصار ، SSL هو "S" في HTTPS. يضيف طبقة من التشفير إلى HTTP تضمن أن المستلم هو في الواقع من يدعي أنه هو وأن المستلمين المصرح لهم فقط يمكنهم فك تشفير الرسالة لرؤية محتوياتها.
مزيد من القراءة على SmashingMag:
- HTTPS Everywhere مع Nginx والورنيش وأباتشي
- كيفية إصدار شهادة SSL جديدة بمفتاح SSL قديم
- الاستعداد لـ HTTP / 2: دليل لمصممي الويب
يجب دائمًا تقديم المعلومات الحساسة مثل أرقام بطاقات الائتمان - بشكل أساسي ، أي شيء خاص - عبر HTTPS. ومع ذلك ، هناك اتجاه متزايد نحو خدمة كل المحتوى عبر HTTPS ، كما نراه على مواقع الأخبار والمدونات ومحركات البحث والمواقع الإلكترونية لمعظم العلامات التجارية الرئيسية. لذلك ، حتى إذا كان موقع الويب الخاص بك لا يعالج المدفوعات ، فهناك أسباب وجيهة للنظر في HTTPS ، وبعضها مدرج هنا:
- المصداقية . حتى الجماهير غير الفنية تربط القفل الأخضر الصغير في شريط عنوان المتصفح بالثقة والموثوقية.
- حماية كلمة السر . ربما يستضيف موقع الويب الخاص بك فقط مقاطع فيديو للقطط. ولكن إذا كان المستخدمون يسجلون الدخول إلى موقع الويب الخاص بك عبر Wi-Fi بكلمة مرور يستخدمونها أيضًا للخدمات المصرفية عبر الإنترنت ، فمن المحتمل أنك تسهل اختراقًا أمنيًا خطيرًا من خلال بث بيانات الاعتماد هذه علنًا.
- تدقيق المستقبل . لا يزال يتم تقديم العديد من مواقع الويب عبر HTTP ، ولكن هناك اتجاه لا يمكن إنكاره نحو HTTPS ، وسيزداد هذا فقط مع زيادة تثقيف المستخدمين حول أمان الويب. كن على الجانب الصحيح من التاريخ.
- SEO . أعلنت Google رسميًا أن HTTPS يُستخدم كإشارة تصنيف. بمعنى آخر ، تكافئ Google مواقع HTTPS من خلال تعزيز ترتيبها في نتائج البحث.
الحجة الشائعة ضد HTTPS هي أنه يقلل من الأداء. صحيح أن عملية التشفير وفك التشفير تكلف ملي ثانية إضافية ، لكنها في معظم الحالات لا تكاد تذكر ، كما يتضح من حقيقة أن الشركات المهتمة بالأداء مثل Google و Facebook تقدم كل محتوياتها عبر HTTPS. وصحيحًا ، يمكن أن يؤدي HTTPS إلى تفاقم مشاكل الأداء الحالية ، مثل العديد من ملفات CSS التي يتم تقديمها بشكل فردي ، ولكن يتم تخفيف ذلك باتباع أفضل الممارسات الأساسية للأداء. وباعتماد HTTP / 2 ، تكون تكلفة أداء HTTPS أقل. خلاصة القول هي أن الانخفاض في الأداء يمثل رادعًا ذا مغزى فقط إذا كان موقع الويب الخاص بك إما مفرطًا في التحسين أو كان أداءه ضعيفًا لدرجة أن كل مللي ثانية مهمة.
كيفية إعداد HTTPS مجانًا
تتمثل الخطوة الأولى لإعداد HTTPS مجانًا في الاشتراك في خدمة DNS السحابية. إذا لم تكن لديك فكرة عن ماهية DNS ، فإنني أوصيك بأخذ دقيقة لتتعلمها قبل المتابعة. إن طريقة عمل DNS المبهجة تقوم بعمل رائع في تقسيمها إلى رسم كاريكاتوري بسيط. بخلاف ذلك ، اعرف ببساطة أن DNS هو النظام الذي يتم من خلاله ربط أسماء النطاقات مثل example.com
(التي يفهمها البشر) بعناوين IP مثل 104.28.2.167
(التي تفهمها أجهزة الكمبيوتر). لديك العديد من الخيارات ، لكني معجب بـ CloudFlare لأنه سريع الإعداد حقًا ولوحة القيادة بديهية وخطة مجانية متوفرة مع العديد من الميزات القوية.
إعداد CloudFlare
بعد التسجيل للحصول على حساب CloudFlare ، ستنتقل عبر معالج سهل لتكوين موقع الويب الأول الخاص بك ، والذي سينتهي بتعليمات حول كيفية تسجيل الدخول إلى مسجل المجال الخاص بك وتوجيه خوادم الأسماء إلى CloudFlare. سيستغرق نشر التغيير بعض الوقت ، ولكن عند اكتماله ، ستستضيف CloudFlare سجلات DNS الخاصة بموقعك على الويب. بعد ذلك ، قم بتشغيل ميزة "SSL المرنة" الخاصة بـ CloudFlare.

يعد اختيار إعداد "SSL المرن" أمرًا مهمًا لأنه لا يتطلب منك شراء وتثبيت شهادة SSL الخاصة بك على خادم موقع الويب الخاص بك. هذا رسم تخطيطي لما يحدث.

كما ترى ، تعمل CloudFlare كوسيط لتأمين حركة المرور بين موقع الويب الخاص بك والعميل. إذا كان هذا موقع ويب HTML ثابتًا ، فستتمكن الآن من الاتصال به عبر HTTPS ( https://yourdomain.com
). ومع ذلك ، يتطلب WordPress تكوينًا إضافيًا للعمل مع البروتوكول المعدل.
إعادة تكوين WordPress من HTTP إلى HTTPS
ستحتاج أولاً إلى تحديث إعدادات "عنوان WordPress" و "عنوان الموقع" في لوحة القيادة ، ضمن "الإعدادات" ← "عام". عند القيام بذلك ، سيكون عليك تسجيل الدخول إلى لوحة القيادة مرة أخرى.

تابع بحذر. إذا قمت بتحديث هذه الإعدادات قبل الأوان ، فإنك تخاطر بإغلاق نفسك. على سبيل المثال ، إذا لم يتم تكوين موقع الويب بشكل صحيح لـ HTTPS وتم تحديث الإعدادات ، فقد تتسبب في حلقة إعادة توجيه تكسر موقع الويب وتمنعك من الوصول إلى لوحة القيادة.

في هذه المرحلة ، يجب أن تكون قادرًا على زيارة الصفحة الرئيسية للموقع عبر HTTPS. ومع ذلك ، ستظل روابط الصفحة تشير إلى عناوين HTTP URL. يقوم WordPress بتخزين روابط الصفحات والصور كعناوين URL غير موجودة ، مما يعني أن عنوان URL الكامل ، بما في ذلك البروتوكول ، يتم حفظه في قاعدة البيانات. لضمان تقديم موقع الويب بالكامل باستمرار عبر HTTPS (دون إبداء التحذيرات بشأن المحتوى المختلط) ، ستحتاج إلى تحديث المحتوى القديم الخاص بك.
تحديث المحتوى القديم
على موقع ويب صغير به صفحات قليلة فقط ، قد يكون الخيار الأسرع هو ببساطة تحديث عناوين URL يدويًا عن طريق تحرير الصفحات الموجودة في واجهة المسؤول. إذا كان موقع الويب كبيرًا أو يحتوي على مدونة نشطة للغاية ، فمن المحتمل ألا يكون التحرير اليدوي عمليًا. إذا كان مضيفك يوفر phpMyAdmin أو واجهة أخرى لتشغيل استعلامات MySQL ، فيمكنك القيام بذلك بسهولة تامة من خلال بعض استعلامات MySQL في علامة تبويب SQL. بدلاً من ذلك ، يمكنك اتباع تعليمات تخصيص Windows للقيام بذلك من سطر الأوامر.
مع المخاطرة بذكر ما هو واضح ، yourdomain.com
في الاستعلامات التالية بنطاقك الفعلي . أيضًا ، إذا قمت بتخصيص بادئة جدول WordPress ، wp_
بالبادئة ذات الصلة.
أولاً ، قم بتحديث عناوين URL للمشاركات والصفحات.
UPDATE wp_posts SET guid = replace(guid, 'https://yourdomain.com','https://yourdomain.com');
[تحديث: كما تمت مناقشته في التعليقات ، لا ينبغي تحرير حقل الدليل الإرشادي.]
قم بتحديث جدول wp_postmeta
أيضًا.
UPDATE wp_postmeta SET meta_value = replace(meta_value,'https://yourdomain.com','https://yourdomain.com');
أخيرًا ، قم بتحديث المحتويات الفعلية للمنشورات أو الصفحات. سيؤدي هذا إلى تحديث أي روابط خلفية إلى HTTPS.
UPDATE wp_posts SET post_content = REPLACE(post_content, 'https://yourdomain.com', 'https://yourdomain.com');
بعد تشغيل هذه الاستعلامات ، سترغب في تحديث الروابط الثابتة من خلال الانتقال إلى "الإعدادات" ← "الروابط الثابتة". ما عليك سوى تغيير الإعداد إلى الإعداد الافتراضي ، ثم إعادة تعيينه إلى أي إعداد كنت تستخدمه في الأصل.
الآن ، يجب أن تكون قادرًا على النقر فوق القوائم والروابط في جميع أنحاء موقع الويب ، ويجب أن يظل البروتوكول HTTPS.
استكشاف أخطاء تحذيرات المحتوى المختلط وإصلاحها
اعتمادًا على السمة والمكونات الإضافية المستخدمة ، قد تتلقى تحذيرًا في شريط العناوين يفيد بأن بعض الموارد لا يتم تقديمها بشكل آمن. إذا كانت الأخطاء مرتبطة بأصول تمت إضافتها بواسطة السمة المخصصة أو المكون الإضافي الخاص بك ، فتأكد من إدراج ملفات JavaScript و CSS في قائمة الانتظار بشكل صحيح وليس ترميز عناوين URL التي تبدأ بـ HTTP
. ستتيح لك معظم المتصفحات توسيع التحذير لإظهار الطلبات المحددة التي تسبب الخطأ. يمكنك أيضًا تجربة مكون إضافي مجاني مثل SSL Insecure Content Fixer ، والذي سيحاول تصحيح المكونات الإضافية للجهات الخارجية التي فشلت في القيام بذلك.
عند هذه النقطة ، يجب أن ترى القفل الأخضر في شريط URL عند زيارة موقع الويب الخاص بك. إذا كنت لا تستخدم مكونًا إضافيًا للتجارة الإلكترونية مثل WooCommerce أو WP eCommerce ، فقد انتهيت! إذا كنت كذلك ، فهناك خطوة أخيرة مهمة.
الحصول على طبقة مآخذ توصيل آمنة (SSL) مرنة للعمل مع ملحقات التجارة الإلكترونية
يحتوي WordPress على وظيفة أساسية تسمى is_SSL()
تعتمد عليها المكونات الإضافية لتحديد ما إذا كانت حركة المرور مشفرة باستخدام SSL. باستخدام الطريقة المذكورة أعلاه وحدها ، ستعيد هذه الوظيفة false
لأن التشفير يكون فقط بين CloudFlare والعميل. حركة المرور التي يتفاعل معها PHP غير مشفرة ، لذا لن يكون من المفيد استخدام هذه الوظيفة العمومية الفائقة (مثل $_SERVER['HTTPS']
). لغرضنا ، المتغير ذي الصلة هو $_SERVER['HTTP_X_FORWARDED_PROTO']
، والذي ، في وقت كتابة هذا التقرير ، لم يتعرف عليه WordPress. طلب تغيير هذا طويل الأمد ، لكن لم يتم حله بعد.
لحسن الحظ ، سيعمل البرنامج المساعد المجاني على إصلاح هذا الأمر على الفور ، CloudFlare Flexible SSL. ما عليك سوى تثبيت البرنامج المساعد وتنشيطه. تذكر أن هذه التقنية لا تضيف المزيد من الأمان . لا تزال حركة المرور بين CloudFlare وخادم موقع الويب الخاص بك غير مشفرة ، وبالتالي ، لا تزال عرضة للاستنشاق.
SSL المرن ليس كامل SSL
مبادرة CloudFlare "Universal SSL" هي محاولة مثيرة للاهتمام لجعل الإنترنت أكثر أمانًا ، ولكنها لا تخلو من الجدل. الشاغل الأساسي هو أن SSL المرن لا يقوم بتشفير النصف الثاني من رحلة المرور (إلى الخادم الخاص بك) ، ومع ذلك لا يزال المتصفح يعرض حاليًا نفس القفل الأخضر الذي توصلنا إليه لربطه بـ SSL الكامل . تقدم CloudFlare التبرير التالي على مدونتها:
قد لا يبدو وجود تشفير متطور أمرًا مهمًا لمدونة صغيرة ، ولكنه أمر بالغ الأهمية لتطوير مستقبل الإنترنت المشفر افتراضيًا. كل بايت ، مهما بدا عاديًا ، يتدفق مشفرًا عبر الإنترنت يجعل الأمر أكثر صعوبة بالنسبة لأولئك الذين يرغبون في اعتراض الويب أو خنقه أو مراقبته. بعبارة أخرى ، فإن ضمان توفر مدونتك الشخصية عبر HTTPS يزيد من احتمالية إمكانية الوصول إلى منظمة حقوق الإنسان أو خدمة وسائل التواصل الاجتماعي أو الصحفي المستقل في جميع أنحاء العالم. معا يمكننا القيام بأشياء عظيمة.
للأفضل أو للأسوأ ، توجد طبقة المقابس الآمنة المرنة هنا ، وسيتعين على الإنترنت التكيف. في غضون ذلك ، يقع العبء على مالكي مواقع الويب لتعليمهم واتخاذ قرارات مسؤولة.
إعادة توجيه طلبات HTTP إلى HTTPS
لا يضمن تمكين تشغيل موقع ويب على HTTPS أن الطلبات ستستخدم البروتوكول بالفعل. إذا كان موقع الويب الخاص بك موجودًا منذ فترة ، فربما قام المستخدمون بالفعل بوضع إشارة مرجعية عليه باستخدام HTTP. يمكنك إعادة توجيه جميع طلبات HTTP إلى البروتوكول الجديد عن طريق إضافة المقتطف التالي إلى أعلى ملف .htaccess
في جذر موقع الويب الخاص بك. إذا كان الملف غير موجود ، يمكنك إضافته بأمان.
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule (.*) https://yourdomain.com/$1 [R=301,L] </IfModule>
إذا كان ملف .htaccess
موجودًا بالفعل ، فاحرص على عدم تغيير أي شيء بين سطور # BEGIN WordPress
و # END WordPress
في هذا الملف. تتم إدارة هذه الأسطر بواسطة WordPress ، وكلما تم تحديث الروابط الثابتة ، يتم الكتابة فوق المحتويات الموجودة في هذا القسم.
تهانينا
من خلال ترقية موقع الويب الخاص بك إلى HTTPS ، تكون قد قمت بتحسين موقع الويب الخاص بك وحماية المستخدمين والمشاركة في تقدم الإنترنت. ولم يكلفك ذلك شيئًا!