Τι είναι η PHP;
Η PHP (PHP: Hypertext Preprocessor) είναι μια από τις δημοφιλέστερες γλώσσες προγραμματισμού ανοιχτού κώδικα και χρησιμοποιείται κατά κόρον για την δημιουργία δυναμικών ιστοσελίδων. Είναι δωρεάν και χρησιμοποιείται κυρίως σε linux web servers. Είναι server side γλώσσα λόγω του ότι πρώτα εκτελείται στον server και στην συνέχεια εμφανίζεται στον browser του χρήστη ως html, σε αντίθεση με άλλες γλώσσες όπως η javascript η οποία εκτελείται στον browser.
Σύμφωνα με το W3Techs, την php χρησιμοποιούν το 83% όλων των ιστοσελίδων που χρησιμοποιούν server side γλώσσες προγραμματισμού. Αυτό σημαίνει ότι για κάθε 8 από τις 10 ιστοσελίδες που επισκεπτόμαστε, είναι πολύ πιθανό να χρησιμοποιούν κάποια έκδοση της PHP. Δεν πρέπει να ξεχνάμε ακόμη, ότι διαδραματίζει έναν πολύ σημαντικό ρόλο, καθώς σχετίζεται με το οικοσύστημα του WordPress λόγω του ότι όλο το CMS βασίζεται στην PHP.
Μια από τις σημαντικότερες προκλήσεις που αντιμετωπίζουν οι περισσότερες php ιστοσελίδες και κατ’ επέκταση οι προγραμματιστές- δημιουργοί τους και οι εταιρίες hosting που τις φιλοξενούν, είναι η έκδοση της PHP που χρησιμοποιούν.
Στη συνέχεια θα δούμε κάποια στατιστικά για την χρήση των php εκδόσεων που και ορισμένους λόγους για τους οποίους είναι σημαντικό να χρησιμοποιούμε την πιο πρόσφατη υποστηριζόμενη έκδοση της .
Οι παλαιές εκδόσεις της PHP
Όπως συμβαίνει σε όλα τα λογισμικά, έτσι και στην PHP υπάρχει ένας συγκεκριμένος χρονικός κύκλο ζωής που αφορά την υποστήριξη της κάθε έκδοσης. Ο κύκλος ζωής της κάθε κύριας έκδοσης της PHP είναι 2 χρόνια μετά το release date της. Κατά τη διάρκεια αυτής της περιόδου όλα τα bugs και τα ζητήματα ασφάλειας, επιλύονται σε τακτική βάση από τους δημιουργούς της.
Τέλος κύκλου ζωής για php 5.6 & 7.1
Στις 3 Δεκεμβρίου 2018, η PHP 7.0 φτάνει στο τέλος της ζωής της. Αυτό σημαίνει ότι δεν θα υπάρχει πλέον υποστήριξη ασφαλείας από την php σε περίπτωση που εμφανιστεί κάποιο κενό ασφαλείας. Το ίδιο θα συμβεί και με την έκδοση 5.6 της οποίας η υποστήριξη λήγει στις 31 Δεκεμβρίου 2018. Αυτό σηματοδοτεί επισήμως το τέλος εποχής για την PHP 5, καθώς η πρώτη της έκδοση ξεκίνησε 14 χρόνια πριν.
Σύμφωνα με την επίσημη σελίδα στατιστικών του WordPress (βασίζεται στην php), πάνω από 63% των WordPress sites εξακολουθούν να χρησιμοποιούν την έκδοση 5.6 ή χαμηλότερη της. Συνυπολογίζοντας και τα WordPress sites που τρέχουν σε PHP 7.0, ένα 82,8% των συνολικών wordpress sites χρησιμοποιούν php που δεν θα υποστηρίζεται από τον Ιανουάριο του 2019.
Ακόμη πιο σημαντικά είναι τα στατιστικά εκτός της κοινότητας του WordPress. Σύμφωνα με το W3Techs, η PHP 5 χρησιμοποιείται σήμερα από το 76,9% όλων των ιστοσελίδων που χρησιμοποιούν PHP.
Αυτό δεν είναι μόνο αρνητικό από άποψη ασφάλειας, αλλά και επειδή υπάρχει ακόμα ένα μεγάλο μέρος των WordPress sites που δεν επωφελούνται από τις πρόσθετες βελτιώσεις επιδόσεων της PHP 7.2.
Γιατί πρέπει να χρησιμοποιείς την πιο πρόσφατη έκδοση της php
Παρακάτω θα δούμε τους λόγους για τους οποίους θα πρέπει να αναβαθμίσεις την PHP του site σου στην πιο πρόσφατη έκδοση.
Ασφάλεια
Ο πρώτος και σημαντικότερος λόγος είναι για να διασφαλίσεις την επίλυση ζητημάτων ασφαλείας που μπορεί να προκύψουν. Η php 5.4 για παράδειγμα δεν έχει ενημερωθεί από το 2015, ενώ ή έκδοση 5.5 δεν έχει διορθωθεί (μέσω κάποιου patch αρχείου) από το 2016.
Αξίζει να σημειωθεί: Σύμφωνα με τα στοιχεία του CVE, το 2016 ήταν η χρονιά με τα περισσότερα ζητήματα ασφαλείας για την php, καταγράφηκαν περισσότερα από 100. Αυτά περιλαμβάνουν DoS, την εκτέλεση του κώδικα, την υπερχείλιση του κώδικα κ.α.
Απόδοση
Σύμφωνα με τα κριτήρια αναφοράς του Phoronix, η PHP 7.2 τρέχει 13% ταχύτερα από την 7.1 και 20% ταχύτερα από 7.0. Είναι 250% ταχύτερη από την PHP 5.6, η οποία δεν έχει ακόμη ενημερωθεί από το 40% των χρηστών του WordPress. Τα επίσημα στατιστικά της PHP δείχνουν ότι η PHP 7 είναι δύο φορές πιο γρήγορη από την έκδοση 5.6 και μάλιστα με το μισό λανθάνοντα χρόνο.
Υποστήριξη
Η υποστήριξη είναι ένας ακόμη λόγος για τον οποίο θα πρέπει να χρησιμοποιείς τις πιο πρόσφατες και υποστηριζόμενες εκδόσεις της PHP. Όπως είδαμε και πιο πάνω, το active support της PHP 7. έχει λήξει από τις 3 Δεκεμβρίου 2017. Ενώ το security support θα λήξει στο τέλος του ’18. Όσον αφορά την έκδοση 7.1, το active support της θα λήξεις την 1η Δεκεμβρίου του 2018. Έτσι λοιπόν, η καλύτερη επιλογή είναι να αναβαθμίσεις σε 7.2 προκειμένου να διασφαλίζεις ότι οι τελευταίες ενημερώσεις ασφαλείας υποστηρίζονται συνεχώς από την κοινότητα της PHP.
Τα σημαντικότερα της PHP 7.2
Εκτός των βελτιώσεων στην απόδοση, η έκδοση 7.2 περιλαμβάνει και πολύ σημαντικά updates στην ασφάλεια της PHP. Συγκεκριμένα:
Το Libsodium είναι μέρος του πυρήνα
Στις προηγούμενες εκδόσεις η βιβλιοθήκη κρυπτογράφησης libsodium ήταν διαθέσιμη μέσω του PECL “PHP Extension Community Library”, πλέον είναι μέρος του πυρήνα. Αυτή η προσθήκη καθιστά την php 7.2 ως την πρώτη γλώσσα προγραμματισμού που προσθέτει σύγχρονη μέθοδο κρυπτογράφησης στην κανονική της βιβλιοθήκη.
Argon 2 για την κρυπτογράφηση των κωδικών
Το Argon 2 είναι ο πολυβραβευμένος αλγόριθμος κρυπτογράφησης οποίος δημιουργήθηκε για να αντικαταστήσει τον αλγόριθμο Bcrypt και να βελτιώσει ακόμη περισσότερο την ασφάλεια της php. Έχει σχεδιαστεί για να πετύχει υψηλότερο ποσοστό πλήρωσης μνήμης και αποτελεσματική χρήση πολλαπλών υπολογιστικών μονάδων, παρέχοντας παράλληλα άμυνα κατά των επιθέσεων.
Απόδοση
Όπως είδαμε παραπάνω, η PHP 7.2 τρέχει 13% ταχύτερα από το 7.1 και 20% ταχύτερα από 7.0. Είναι 250% ταχύτερη από την PHP 5.6, η οποία δεν έχει ακόμη ενημερωθεί από το 40% των χρηστών του WordPress.
Αφαιρέσεις
Όπως συμβαίνει με κάθε ενημέρωση, έτσι και στην έκδοση 7.2 υπάρχουν αρκετές εντολές και λειτουργίες των προηγούμενων εκδόσεων που έχουν αφαιρεθεί και εμφανίζουν σφάλματα στα log αρχεία όταν χρησιμοποιούνται από τους προγραμματιστές. Μπορείς να δεις την πλήρη λίστα εδώ.
Στην DNHOST
Όλοι οι servers της DNHOST υποστηρίζουν την PHP 7.2 και μπορείς πολύ εύκολα να την ενεργοποιήσεις ακολουθώντας την διαδικασία μέσα από το Plesk της DNHOST.
Τα πακέτα hosting μας ανοίγουν by default σε PHP 5.4. Αυτό γίνεται για λόγους ευκολίας ώστε όλα τα sites να είναι άμεσα συμβατά. Φυσικά ακολουθώντας την παραπάνω πανεύκολη διαδικασία αναβαθμίζεσαι στην PHP 7.2.
Προσοχή! Οι μεγαλύτερες πλατφόρμες που τρέχουν την τελευταία έκδοση (WordPress, Joomla, Drupal, κ.λπ) είναι συμβατές με την PHP 7.2. Υπάρχει όμως η πιθανότητα κάποια themes και plugins ή ακόμη και το ίδιο το core του website σου να μην είναι συμβατά με την PHP 7.2, για τον λόγο αυτό επιβεβαίωσέ το πριν εγκαταστήσεις την 7.2. Υπάρχουν και plugins που μπορούν να τσεκάρουν την συμβατότητα της PHP 7.2 στο site σου. Όπως για παράδειγμα το PHP Compatibility Checker για το wordpress.
Ενεργοποίησε την PHP 7.2 για να αυξήσεις την ασφάλεια και την απόδοση του site σου! Για οποιαδήποτε βοήθεια μη διστάσεις να επικοινωνήσεις με την τεχνική μας υποστήριξη ή να μας γράψεις την ερώτησή σου στα σχόλια.