كل المقالات

ثلث مواقع ⁨PHP⁩ على نسخ بلا إصلاحات، و⁨8.2⁩ هو التالي

⁨PHP⁩ · 4 دقيقة قراءة ·

بحسب مسح ⁨W3Techs⁩ بتاريخ 22 أكتوبر 2026، يعمل 34.7% من المواقع التي تستخدم ⁨PHP⁩ على ⁨PHP 7⁩ أو أقدم، وكل هذه الإصدارات انتهى دعمها. وفي اليوم نفسه تُظهر صفحة الإصدارات المدعومة على ⁨php.net⁩ أن الدعم الأمني لـ ⁨PHP 8.2⁩ ينتهي في 31 ديسمبر 2026، أي بعد 70 يومًا. إن كنت مسؤولًا عن مواقع عملاء أو حساب استضافة مشتركة أو تطبيق داخلي قديم، فهذا وقت معرفة موقع كل منها من هذا الخط، فقد أظهرت النشرة الأمنية عن ثغرات النواة في 21 أكتوبر ثمن الوقوف على الجانب الخطأ منه.

ما يقوله المسح وما لا يقوله

تقول ⁨W3Techs⁩ إن ⁨PHP⁩ مستخدمة في 69.3% من المواقع التي تستطيع تحديد لغتها على الخادم. ومن مواقع ⁨PHP⁩ هذه: الإصدار 8 بنسبة 65.3%، والإصدار 7 بنسبة 26.9%، والإصدار 5 بنسبة 7.7%، والإصدار 4 بنسبة 0.1%. ويلزم تحفظان بجانب هذه الأرقام. الأول أن المسح لا يرى إلا ما يظهر من الخارج، فالموقع الذي يخفي إصداره لا يدخل في التوزيع. والثاني أنه يكتفي بالإصدار الرئيسي: نسبة 65.3% للإصدار 8 تشمل ⁨8.0⁩ و⁨8.1⁩ المنتهي دعمهما، و⁨8.2⁩ الذي يقترب من النهاية. فالنسبة الحقيقية للمواقع خارج الدعم 34.7% على الأقل.

مواقع ⁨PHP⁩ حسب الإصدار الرئيسي، ⁨W3Techs⁩ الإصدار 8: 65.3% الإصدار 7: 26.9% الإصدار 5: 7.7% الإصدار 4: 0.1% خارج الدعم: 34.7% يشمل ⁨8.0⁩ و⁨8.1⁩ المنتهيين و⁨8.2⁩ الذي ينتهي آخر 2026، والمسح لا يفصلها
العروض بمقياس حقيقي. الجزء الملوّن خارج الدعم، وجزء من الشريط العادي أيضًا.

والنمط العام معروف: تبقى نسخ ⁨PHP⁩ القديمة لأسباب عادية. استضافة مشتركة تُبقي إصدارًا قديمًا متاحًا حتى لا يتعطل شيء، أو وكالة سلّمت موقعًا قبل سنوات ولم يعد أحد مسؤولًا عن ترقيته، أو إضافة أو حزمة ثبّتت بيئة التشغيل ولم تُستبدل. لا شيء من ذلك يظهر في المتصفح، ولهذا تحديدًا يستمر.

ما معنى الدعم الأمني فقط

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

ونشرة أكتوبر مثال واضح: تنص على أن ⁨PHP 8.1⁩ وما قبله لم يعد يصله تحديث من مشروع ⁨PHP⁩. ومع ذلك، ولخطورة الثغرات، نشر فريق الأمن نقلًا مصدريًا مختصرًا للإصدارات ⁨7.4⁩ و⁨8.0⁩ و⁨8.1⁩، لهذا الإصدار وحده، ولمن يبني ⁨PHP⁩ من المصدر فقط. وقراءتي، وهي استنتاج لا وعد من أحد، أنك لا يجب أن تبني خطتك على تكرار ذلك.

2026 2027 2028 2029 8.2 أمني فقط 8.3 أمني فقط 8.4 نشط أمني فقط 8.5 نشط أمني فقط اليوم، 22 أكتوبر 2026 31 ديسمبر 2026: نهاية ⁨8.2⁩
المتصل دعم نشط والمتقطع إصلاحات أمنية فقط. موقع على ⁨8.2⁩ ينتقل إلى ⁨8.4⁩ يكسب سنتين، وإلى ⁨8.5⁩ ثلاثًا.

خطة ترقية بتواريخ

التواريخ من ⁨php.net⁩ مباشرة. ⁨8.3⁩ يتلقى إصلاحات أمنية حتى 31 ديسمبر 2027. و⁨8.4⁩ في الدعم النشط حتى 31 ديسمبر 2026، ثم إصلاحات أمنية حتى 31 ديسمبر 2028. و⁨8.5⁩ في الدعم النشط حتى 31 ديسمبر 2027، ثم إصلاحات أمنية حتى 31 ديسمبر 2029. لموقع على ⁨8.2⁩ اليوم، الهدف المعقول ⁨8.4⁩ أو ⁨8.5⁩، أما ⁨8.3⁩ فيشتري سنة واحدة ثم تعيد العمل كله قريبًا. وقبل تبديل بيئة التشغيل تأكد أن اعتماديات المشروع تقبلها:

# the version the command line runs
php -r 'echo PHP_VERSION, PHP_EOL;'
# run under the target PHP: do the dependencies accept it?
composer check-platform-reqs

وتذكّر أن سطر الأوامر وخادم الويب قد يشغّلان نسختين مختلفتين، فتأكد أيضًا من النسخة التي تخدم الطلبات.

وإن كان غيرك يدير الخادم، فاسأل ثلاثة أسئلة كتابةً: ما نسخة ⁨PHP⁩ التي يعمل بها الموقع في الإنتاج لطلبات الويب؟ في أي تاريخ سينتقل إلى ⁨8.4⁩ أو ⁨8.5⁩؟ ومن يطبّق إصدارات ⁨PHP⁩ الأمنية، وهل طُبّقت إصدارات 21 أكتوبر؟

موقع على ⁨PHP 7⁩ أو أقدم خارج كل إصلاح منذ الآن، وموقع على ⁨8.2⁩ أمامه حتى 31 ديسمبر 2026: ضع الترقية في التقويم الآن، لا بعد النشرة الأمنية القادمة.

خطوة اليوم: اكتب قائمة بمواقعك، وبجانب كل اسم نسخة ⁨PHP⁩ التي يخدم بها، وأعطِ كل ما هو أقدم من ⁨8.3⁩ تاريخ ترقية قبل نهاية العام. المصدر: صفحة الإصدارات المدعومة على ⁨php.net⁩.

ملاحظات القراء

  1. مفيش تعليقات لسه. الأول دايمًا الأجرأ.
بتبني حاجة زي كده؟ أقدر أساعدك. راسلني على واتساب