كيفية تمكين HTTP / 2 على خادم Plesk

لدى Plesk دعم HTTP / 2 أصلي. تتطلب عملية النشر الخاصة بها تخطيطًا دقيقًا ، على الرغم من أن نشر HTTP / 2 على Plesk أسهل بكثير مقارنة بلوحات التحكم الأخرى. ينطبق هذا الدليل على مجموعة متنوعة من أنظمة التشغيل. ستعمل الخطوات المقدمة هنا طالما كان لديك إصدارات Plesk و OpenSSL كافية. سوف أصف هذه المتطلبات في "الخطوة 1: التحقق من المتطلبات".

يجب أن تأخذ في الاعتبار أن العديد من المتصفحات ستدعم فقط HTTP / 2 لموقع الويب الخاص بك إذا كنت تستخدم شهادة SSL. عند عدم استخدام شهادة SSL ، لن يتم عرض المحتوى عبر HTTP / 2. لحسن الحظ ، هناك العديد من الطرق للحصول على شهادة SSL. إذا كنت مهتمًا بالحصول على شهادة Let's Encrypt ، فراجع هذا الدليل لإنشاء واحدة على Plesk: Let's Encrypt on Plesk .

على الرغم من وجود فرصة جيدة لتمكينك من تمكين HTTP / 2 دون أن يلاحظه المستخدمون أو الزوار (وبدون أي توقف) ، يجب أن تعلن عن هذه الصيانة. في حالة عدم تكوين مجموعة تشفير SSL الخاصة بك بشكل صحيح ، فقد يكون هناك بعض الوقت الضائع. لحسن الحظ ، من السهل جدًا إعادة التغييرات باستخدام أداة Plesk المدمجة.

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

إذا كان ذلك ممكنًا ، يجب أن تقوم بتدوير خادم Vultr سحابي آخر مع تثبيت Plesk عادي وتنفيذ الأمر (الأوامر) أدناه. بعد ذلك ، استنادًا إلى نجاحها (أو فشلها) ، يمكنك اتخاذ خطوات لتصحيح و / أو حل أية مشكلات على الفور قد تنشأ في عمليات نشر HTTP / 2 المستقبلية على خوادم الإنتاج المستخدمة حاليًا.

تمكين HTTP / 2

الخطوة 1: التحقق من المتطلبات

خارج الصندوق ، يمكنك تمكين دعم HTTP / 2 للخادم الوكيل العكسي الذي تم نشره Plesk. إذا لم تكن متأكدًا مما إذا كان الخادم يستخدم وكيلًا عكسيًا أم لا ، فيجب عليك التحقق من "مراقب الخدمة" إذا رأيت كلاً من Apache و Nginx مدرجين هناك ، فمن الآمن أن تفترض أن التثبيت الخاص بك يستخدم حاليًا وكيل عكسي. إذا كنت ترى فقط Apache أو Nginx فقط ، فمن المرجح أنك تستخدم خادم ويب واحد.

في الجوهر ، هناك متطلب واحد مطلوب تمامًا لتشغيل HTTP / 2 ، وهو إصدار OpenSSL مع دعم ALPN.

ومع ذلك ، إذا كان لديك الإصدار 12.5.30 أو الأحدث من Plesk مثبتًا على CentOS / RHEL 7 أو Ubuntu 14.04 أو Debian 8 أو أحدث ، فسيتم نشر Nginx مع دعم ALPN من خارج الصندوق.

إذا كان لديك إصدار Plesk أو نظام تشغيل أقدم ، فيمكنك ترقية بعض الحزم. ومع ذلك ، أنا لا أؤيد أو توثيق هذا. هذه الإصدارات وأنظمة التشغيل قديمة جدًا ، وأفضل الممارسات هي تحديثها. ضع في اعتبارك المخاطر الأمنية لاستخدام البرامج القديمة أيضًا.

لا توجد وثيقة تنص صراحة على أنظمة التشغيل والإصدارات المتوافقة مع HTTP / 2 على Plesk ؛ ومع ذلك ، إذا كنت تستخدم أحدث إصدار (في وقت نشر هذا الدليل) ، يجب أن تستوفي المتطلبات. يمكنك افتراض أن أنظمة التشغيل القديمة مثل CentOS / RHEL 5 لن تكون متوافقة.

بصرف النظر عن متطلبات إصدار OpenSSL ، لاحظ أن Apache لا يحتاج بالضرورة إلى التوافق مع HTTP / 2 أيضًا. يتوفر دعم HTTP / 2 لـ Apache منذ الإصدار 2.4.17 ، ولكن في حالة استخدام وكيل عكسي (وهو الإعداد الافتراضي في Plesk) ، يجب أن يكون إصدار Nginx كافياً فقط. لن يكون خادم Apache الخلفية متوافقًا. يمكنك استشارة "مدير الخدمة" في Plesk للتأكد من أنك تستخدم وكيل عكسي. عندما يتم سرد Nginx هناك ، فمن الآمن افتراض أن Apache و Nginx مثبتان كإعداد وكيل عكسي حيث يعمل Nginx كخادم الواجهة الأمامية.

يوضح الأمر التالي ما إذا تم تنشيط Nginx أم لا.

/usr/local/psa/admin/bin/nginxmng -s

بالنسبة إلى OpenSSL ، يجب أن يكون لديك الإصدار 1.0.1 على الأقل. يمكنك التحقق باستخدام الأمر التالي:

rpm -qa | grep openssl

سيؤدي هذا إلى طباعة إصدار مشابه لما يلي:

openssl-1.0.1e-42.el6_7.4.x86_64

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

الخطوة 2: تمكين HTTP / 2 في Plesk

بناءً على نظام التشغيل المستخدم ، قم بتمكين HTTP / 2 باستخدام http2_prefالأداة. يجب تنفيذ هذا الأمر كجذر.

تمكين HTTP / 2 على CentOS / RHEL

نفذ - اعدم: /usr/local/psa/bin/http2_pref enable

تمكين HTTP / 2 على Ubuntu / Debian

نفذ - اعدم: /opt/psa/bin/http2_pref enable

الخطوة 3: تحسين مجموعة التشفير

يعد استخدام مجموعة تشفير جيدة أمرًا مهمًا للغاية بالنسبة للأمان. إن دعم البروتوكولات القديمة سيهزم بشكل فعال تأثير إجراءاتك الأمنية. تأكد من ضبط البروتوكولات المتاحة وإصدارات TLS المتاحة باستخدام أداة Plesk المضمنة sslmng.

على سبيل المثال ، سيؤدي تمكين رموز التشفير وإصدارات TLS التالية إلى ضمان التوافق مع HTTP / 2. إذا كنت غير متأكد من الأصفار والإصدارات التي يجب عليك تمكينها ، فالتزم بالإعدادات التالية:

plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

يعدل هذا الأمر /etc/nginx/conf.d/ssl.conf. يمكنك تعديل هذا الملف مباشرة ، ولكن استخدام الأمر المذكور أعلاه سيستمر في التغييرات عبر تحديثات Plesk.

من أجل الحصول على "السرية التامة للأمام" باستخدام مجموعة تشفير أخرى ، يمكنك تجربة الشفرات التالية:

ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS

هناك العديد من مجموعات التشفير المتاحة ، ويجب عليك اختيار الأنسب لاحتياجاتك. يجب عليك استشارة موقع ويب مثل Cipherli.st من أجل جمع مجموعة تشفير تناسب احتياجاتك. من خلال تحديده في sslmngالأداة ، سيتم استخدام مجموعة التشفير على الفور.

للتحقق من دعم TLS لمتصفحك كعميل ، استخدم أداة Qualys SSL . عندما لا تسمح بوجود عدد كافٍ من الشفرات أو إصدارات TLS ، فقد يتعذر الوصول إلى بعض مواقع الويب.

الخطوة 4: التحقق من توافق HTTP / 2

بعد تمكين HTTP / 2 ، يجب عليك التحقق مما إذا كان يمكن الوصول إلى مواقع الويب وخادم الويب عبر HTTP / 2. هناك أداة مفيدة جدًا على الويب لهذا: اختبار HTTP / 2 .

من أجل الحصول على نتيجة دقيقة ، تأكد من تعطيل جميع الوكلاء العكسيين الموجودين أمام الخادم الخاص بك. على سبيل المثال ، إذا كنت تستخدم شبكة CDN لا تدعم HTTP / 2 ، فستعيد أداة الاختبار موقعك على الويب ولا يدعم HTTP / 2 حتى إذا تم تمكين�� بنجاح على مستوى الخادم. تمامًا مثل الطريقة الأخرى: إذا كان لديك وكيل عكسي مثل Cloudflare أمام موقعك على الويب (والذي يدعم HTTP / 2) ، فستعيد الأداة دائمًا HTTP / 2 على أنه ممكّن ويعمل ، بغض النظر عن وظيفته على مستوى الخادم .

إذا كانت بعض المتصفحات ترفض تحميل موقعك (مواقعك) أو تقديم أي محتوى من خادم الويب الخاص بك بعد تمكين HTTP / 2 ، فيجب عليك تحليل إعداد SSL الخاص بك باستخدام أداة Qualys .

(اختياري) التراجع عن تكوين HTTP / 2

إذا لزم الأمر ، إذا كنت بحاجة إلى وقت لتصحيح الأخطاء ، يمكنك (مؤقتًا) تعطيل HTTP / 2 ببساطة عن طريق تنفيذ الأمر أدناه. بمجرد رغبتك في إعادة تمكين HTTP / 2 ، ما عليك سوى تنفيذ الأمر لتنشيطه وإعادة محاولة الوصول إلى أي من مواقع الويب الخاصة بك. لا توجد طريقة لتمكين أو تعطيل HTTP / 2 لنطاقات أو مواقع ويب محددة ؛ إنه إعداد على مستوى الخادم.

تعطيل HTTP / 2 على CentOS / RHEL

نفذ - اعدم: /usr/local/psa/bin/http2_pref disable

تعطيل HTTP / 2 على Ubuntu / Debian

نفذ - اعدم: /opt/psa/bin/http2_pref disable

استكشاف الأخطاء وإصلاحها

بالنظر إلى العديد من مكونات الخادم المشاركة في تمكين HTTP / 2 ، في بعض الحالات ، قد تحتاج إلى استكشاف الأخطاء وإصلاحها عندما لا يتم تحميل مواقع الويب بشكل صحيح أو لا يتم تحميلها على الإطلاق بعد تنشيط دعم HTTP / 2.

ملاحظة: تأكد من عدم تعطيل دعم HTTP / 2 باستخدام http2_prefالأداة عند اتباع هذه الخطوات.

تحقق من المتطلبات

أولاً ، تأكد من استيفاء المتطلبات الموضحة في بداية هذه المقالة.

إعادة تكوين Nginx

إذا كنت تستوفي متطلبات HTTP / 2 ، يمكنك محاولة إعادة إنشاء ملفات التكوين Nginx. يجب أن تعلم أن هذا سيزيل أي تكوينات مخصصة ، لذا قم بإنشاء نسخة احتياطية من دليل تكوين Nginx مسبقًا. نظرًا لأنه يمكن نشر ملفات التكوين عبر الخادم ، فمن الأفضل ببساطة إنشاء لقطة أو أخذ نسخة احتياطية. ثم قم بتنفيذ هذا الأمر:

/usr/local/psa/admin/bin/httpdmng --reconfigure-all

أعد فحص مجموعة التشفير

إذا لم يكن لهذا أي تأثير أيضًا ، فعلى الأرجح ، فإن مجموعة التشفير هي المسؤولة. قم بتنفيذ الأمر التالي مرة أخرى:

plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

خطأ في panel.ini

تأكد من أن الملف /usr/local/psa/admin/conf/panel.iniيحتوي على المحتوى التالي:

[webserver]
nginxHttp2 = true

يمكنك التحقق مما إذا كان الملف يحتوي على هذا بسرعة عن طريق تنفيذ: cat /usr/local/psa/admin/conf/panel.ini | grep nginxHttp2

هل هذا الأمر لا يعيد شيئا؟ ثم على الأرجح ، الملف للقراءة فقط ، على سبيل المثال بسبب chattrسمة. ربما تمت إضافته عند تنفيذ http2_prefالأمر (لتمكين HTTP / 2).

تحقق من استخدام SSL

عندما لا يستخدم موقع الويب طبقة المقابس الآمنة (SSL) ، فسوف يعود إلى HTTP / 1.1. سيتم فقط عرض مواقع الويب التي تستخدم SSL باستخدام HTTP / 2. تأكد من أنك لا تفرض HTTP / 2 محليًا في جميع الحالات ، لأن ذلك لن يعمل وليس مشكلة من جانب الخادم.

خيارات أخرى

إذا لم يفلح ذلك أيضًا ، يجب عليك استشارة خبير Plesk ، على سبيل المثال في منتديات Plesk. في كثير من الحالات ، ستعمل الخطوات المذكورة أعلاه على إصلاح معظم المشكلات.

أحد الإجراءات الأخيرة التي يمكنك اتخاذها هو ببساطة إعادة تشغيل الخادم. في بعض الحالات الغريبة ، أدى هذا إلى إصلاح المشكلات بشكل غير صحيح. ومع ذلك ، يجب أن تكون قادرًا دائمًا على تحديد المشكلات لمنع حدوثها (فجأة) مرة أخرى.

وبهذا ينتهي دليلي ، أشكرك على القراءة.



نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد