Why You Need to Upgrade to PHP 7+ ASAP (and How to Do It Right Now)

This is a guest post. Opinie i zalecenia są własne autora i niekoniecznie te z WP Rocket.

Co by było, gdybym powiedział, że możesz podwoić szybkość strony swojej witryny WordPress w ciągu zaledwie 10 minut? Brzmi niesamowicie, prawda?

Cóż, możesz – wszystko, co musisz zrobić, to zaktualizować do najnowszej wersji PHP.

A wkrótce i tak nie będziesz miał wyboru, ponieważ PHP 5.6 stanie się minimalnym wymaganiem dla WordPressa w kwietniu 2019 r., aby zostać zastąpionym przez PHP 7.0 już w grudniu 2019 r.

PHP jest jednym z najpopularniejszych języków skryptowych w sieci. W rzeczywistości 70% wszystkich stron internetowych, które używają programowania po stronie serwera, używa PHP. To 8 na 10 witryn.

PHP zasila również witryny WordPress. Jednak dużym problemem, z którym borykamy się w społeczności WordPress, jest fakt, że wiele witryn, firm, dostawców usług hostingowych i deweloperów nie obsługuje najnowszych wersji PHP. Jest to szczególnie frustrujące, jeśli weźmiemy pod uwagę, jak łatwo jest dokonać aktualizacji.

W MailPoet mocno wierzymy, że wszyscy użytkownicy WordPressa powinni dokonać aktualizacji do najnowszej wersji PHP tak szybko, jak to możliwe. Nie tylko natychmiast poprawi szybkość i wydajność twojej strony, ale także zapewni bezpieczeństwo i kompatybilność.

Dzisiaj chcę cię przekonać, abyś poświęcił 10 minut na aktualizację swojej strony do najnowszej wersji PHP.

WordPress i jego problem z PHP

Osiem na każde 10 witryn WordPress będzie wkrótce działać na wersji PHP, która nie jest już wspierana – jeśli właściciele witryn nie będą działać szybko.

Według statystyk WordPress.org, 36,4% witryn WordPress działa na PHP 5.6. Problem? Aktywne wsparcie dla PHP 5.6 zakończyło się 19 stycznia 2017 roku, a oficjalnie osiągnie swój koniec życia 31 grudnia. Oznacza to, że nie będzie już miał wsparcia bezpieczeństwa, a strony internetowe, które nadal go używają, mogą być narażone na niezałatane luki.

Potem jest PHP 7.0, który osiągnął swój koniec życia 3 grudnia 2018 roku. To również nie jest już wspieraną wersją PHP. Mimo to, prawie 20% witryn WordPress jest na PHP 7.0.

Jeśli myślisz: „czy PHP 7.0 nie zostało właśnie wydane?!” To było… dwa lata i 11 miesięcy temu. Jak każde oprogramowanie, PHP ma swój cykl życia, którego musi się trzymać, aby móc wprowadzać ulepszenia i nowe funkcje (podobnie jak WordPress). Każda większa wersja PHP jest zazwyczaj w pełni wspierana przez dwa lata po jej wydaniu, z poprawkami błędów i poprawkami bezpieczeństwa.

I wtedy jest jeszcze 25.2% stron działających na niewspieranych starszych wersjach PHP, włączając w to 5.2, 5.3, 5.4, i 5.5.

Więc w sumie, w momencie pisania tego tekstu, aż 81,3% witryn WordPressa działa lub będzie działać na niewspieranej wersji PHP.

Tylko 18,6% witryn WordPressa działa na najnowszych wspieranych wersjach-PHP 7.1 i PHP 7.2.

Why Are So Many WordPress Sites Still on Older Versions of PHP?

Istnieje wiele różnych powodów, dla których witryny nadal działają na przestarzałych i niewspieranych wersjach PHP, ale są to najczęstsze czynniki.

Właściciele stron nie wiedzą lub nie dbają o to

Dla wielu właścicieli stron, szczególnie tych, którzy nie są uzdolnieni technicznie, wszystko o co dbają to fakt, że ich strona jest gotowa i działa, funkcjonuje dobrze i dobrze wygląda. Jeśli nie muszą aktualizować swojej wersji PHP, dlaczego mieliby tego chcieć?

W wielu przypadkach to deweloperzy i hostingodawcy muszą zmusić właścicieli witryn do aktualizacji (dla ich własnego dobra!).

To czasochłonne dla twórców wtyczek i motywów

Dla twórców starszych wtyczek i motywów, aktualizacja do najnowszych wersji PHP wymaga aktualizacji kodu, wraz z obszernymi testami, aby zapewnić kompatybilność. W końcu nie chcą zepsuć stron swoich użytkowników.

Web Hosts Don’t Want to Break Sites

What it essentially comes down is that web hosting companies don’t want to break their customers’ websites. Mimo, że PHP 5.6 został wydany w 2014 roku i PHP 7.0 ma osiągnąć koniec życia, hostingi odłożyły aktualizacji swoich serwerów do najnowszych wersji PHP (7.1 lub 7.2) ze względu na potencjał do złamania wtyczek i motywów.

Z 32,4% wszystkich stron internetowych przy użyciu WordPress, to dużo biletów wsparcia, jeśli hostingi pchać aktualizacje i rzeczy iść źle.

To oznacza, że jeśli chcesz, aby twoja strona działała na najnowszej wersji PHP, będziesz musiał przejąć inicjatywę i zaktualizować ją samodzielnie lub zmusić swojego dostawcę hostingu do pomocy.

Dlaczego WordPress nie wymaga nowszych wersji PHP?

Projekt WordPress nie zmusił użytkowników do korzystania z najnowszych wersji PHP, ponieważ… Cóż, to skomplikowane. To mieszanka wszystkiego, co omówiłem w powyższej sekcji, a także posiadanie odpowiedzialności za zarządzanie najpopularniejszym na świecie systemem zarządzania treścią.

Ale rzeczy mają się zmienić w 2019 roku.

Na WordCamp US w grudniu 2018 roku ogłoszono, że PHP 5.6 stanie się minimalną obsługiwaną wersją w pierwszej połowie 2019 roku, a minimalna wersja zostanie ponownie podbita do PHP 7.0 w drugiej połowie 2019 roku-jeśli wszystko pójdzie zgodnie z planem.

Te zmiany nadchodziły od dawna, a my możemy podziękować Yoastowi za odegranie dużej roli w popychaniu użytkowników do aktualizacji. Na początku 2017 roku wraz z wydaniem Yoast SEO 4.5, dodano powiadomienie do pulpitu nawigacyjnego WordPress dla użytkowników Yoast. Wzywało ono właścicieli witryn, których witryny znajdowały się na serwerze działającym z przestarzałą wersją PHP, do aktualizacji do nowej wersji.

Właściciele witryn mogli wyłączyć nag tylko poprzez aktualizację PHP.

Ta inicjatywa, zwana projektem Yoast WHIP, dowiodła, że proszenie użytkowników (lub „zawracanie im głowy”, jak mówi Yoast, w oryginalnym bilecie Trac, który napisali o połączeniu WHIP z rdzeniem WordPressa)- do aktualizacji może faktycznie spowodować zmianę w znaczący sposób.

Remkus de Vries, Manager Partnerships and WordPress Community Liaison w Yoast, powiedział mi, że przez długi czas ich zespół widział, jak liczba instalacji nowszych wersji PHP podwaja się jako procent całości.

W wyniku WHIP, wraz z pozytywnym uptick w liczbie aktualizacji PHP, projekt Servehappy został uruchomiony w połowie 2017 r.

Dawniej, na początku grudnia WordPress core contributor Gary Pendergast zaproponował aktualizację minimalnych wersji PHP. Plan, który Matt Mullenweg potwierdził w swoim State of the Word na WordCamp US, sprawi, że PHP 5.6 będzie minimalną wymaganą wersją dla WordPressa do kwietnia 2019 r., Z PHP 7.0 stanie się minimum „już” w grudniu 2019 r.

Po tym, jak Matt ogłosił tę propozycję na WCUS, dostała ona ogromny aplauz – znacznie więcej aplauzu niż większość wiadomości o Gutenbergu. Dla społeczności WordPress, posuwanie się naprzód z najnowszymi wersjami PHP jest mile widzianą wiadomością.

While bumping up the minimum PHP versions won’t necessarily change apathy, awareness or developer support for newer PHP releases overnight, the deadlines will certainly help ensure WordPress keeps up with PHP in future years as it develop.

According to the WordPress.org:

„Najbliższym celem jest wprowadzenie struktury wsparcia i edukacji właścicieli witryn/zasobów itp. tak, abyśmy mogli bardziej aktywnie zmniejszyć liczbę istniejących aktywnych witryn WordPress na starszych wersjach PHP EOL, a tym samym poprawić bezpieczeństwo i wydajność sieci.”

Dlaczego powinieneś uaktualnić do PHP 7+

Jeśli powyższe nie przekonało, jest jeszcze coś więcej. Nie tylko PHP 7.2 jest teraz oficjalnie wymienione jako zalecany wymóg do uruchomienia WordPressa, ale aktualizacja niesie ze sobą mnóstwo korzyści związanych z szybkością, wydajnością i bezpieczeństwem.

Szybkość i wydajność

Jeśli Twoja strona działa na starszej wersji PHP, aktualizacja do najnowszej wersji zapewni Ci natychmiastowy wzrost wydajności – większy niż jakiekolwiek poprawki na krawędziach Twojej witryny WordPress.

Kiedy PHP 7.0 zostało wydane, było powszechnie chwalone za dostarczanie znacznego wzrostu wydajności. W rzeczywistości, oficjalne benchmarki PHP wykorzystujące WordPress 4.1.1 pokazują, że PHP 7.0 pozwala serwerom na wykonanie dwa razy więcej żądań na sekundę niż PHP 5.6 przy mniej niż połowie opóźnień.

Host Kinsta również opublikował ostatnio benchmarki wydajności, porównując PHP 5.6, PHP 7.0, PHP 7.1, PHP 7.2 i PHP 7.3. Ich wyniki pokazują, że PHP 7.3 wykonuje 3x więcej żądań na sekundę w porównaniu do PHP 5.6.

Jeśli potrzebujesz więcej dowodów na wzrost wydajności, który uzyskasz po aktualizacji, wczesne benchmarki z serwisu Phoronix pokazały, że PHP 7.3, który został wydany pod koniec 2018 roku, jest o około 5% szybszy niż PHP 7.2.

Wsparcie i kompatybilność

Kompatybilność to kolejny duży powód, dla którego chciałbyś być na najnowszej wersji PHP. Jak w przypadku każdego oprogramowania, deweloperzy wspierają starsze wersje tylko przez określony czas. Na przykład, starsze wersje iPhone’ów nie są kompatybilne z najnowszą wersją systemu iOS, co czyni je praktycznie bezużytecznymi.

Sprowadza się to do tego, że aktywne wspieranie starego oprogramowania i zapewnienie wstecznej kompatybilności jest kosztowne, głównie pod względem czasu dla twórców wtyczek i motywów. Chcą oni iść naprzód i dodawać do swoich produktów nowe funkcje oraz poprawiać bezpieczeństwo i wydajność, a wspieranie starszych wersji PHP ich powstrzymuje.

W MailPoet musieliśmy iść naprzód dla własnych korzyści i zrezygnowaliśmy ze wsparcia dla PHP 5.2, 5.3, 5.4 i 5.5. Zmniejszyło to nasz zasięg do wielu użytkowników, ale znacznie zwiększyło szczęście naszego zespołu – oznaczało to, że możemy skupić się na tworzeniu większego i lepszego produktu!

W rzeczywistości problemy ze starszymi wersjami PHP regularnie pojawiają się na forach pomocy technicznej WordPress.org. Jeśli wyszukasz „T_Function”, znajdziesz ponad 2700 wyników.

Jak wyjaśnia Predrag Dubajic z WPMU DEV w tym wątku pomocy technicznej dla wtyczki Hustle, błędy T_Function zazwyczaj pojawiają się, gdy użytkownik korzysta z przestarzałej wersji PHP:

Bezpieczeństwo

Kolejnym podstawowym powodem, dla którego powinieneś dokonać aktualizacji, jest bezpieczeństwo Twojej witryny WordPress. Uruchomienie najnowszej wersji PHP zapewnia, że Twoja witryna jest chroniona przed lukami w zabezpieczeniach zidentyfikowanymi w starszych wersjach PHP.

Na przykład, oto otwieracz oczu: według źródła danych o lukach w zabezpieczeniach CVE Details, w tym roku w PHP znaleziono 18 znanych luk. W 2017 roku odkryto 43 exploity bezpieczeństwa, a w 2016 roku znaleziono ogromną liczbę 107 podatności.

Te podatności obejmują DoS, wykonanie kodu, SQL injection, XSS i wiele innych typów exploitów.

Najlepszą praktyką WordPress jest utrzymywanie aktualnych wersji rdzenia WordPress, wtyczek i motywów. Podobnie, aby uniknąć luk w zabezpieczeniach, powinieneś również aktualizować swoją wersję PHP.

Sprawdzanie kompatybilności PHP

Mam nadzieję, że do tej pory przekonałem cię o zaletach aktualizacji do najnowszej wersji PHP. Ale zanim przystąpisz do aktualizacji, musisz najpierw zrobić kilka rzeczy: sprawdzić, jaką wersję PHP posiadasz, a także sprawdzić kompatybilność swojej strony z najnowszą wersją.

Nie jesteś pewien, jaką wersję PHP posiada twoja strona? Oto jak możesz to sprawdzić.

Zainstaluj darmową wtyczkę Display PHP Version, którą możesz pobrać z repozytorium wtyczek WordPress. Kiedy aktywujesz tę wtyczkę, wyświetli ona twoją wersję PHP w widżecie „At a Glance” w pulpicie nawigacyjnym WordPress.

Powinieneś również sprawdzić, czy twoje wtyczki i motywy są kompatybilne z najnowszą wersją PHP przed aktualizacją. Plugin WP Engine’s PHP Compatibility Checker jest najlepszym narzędziem do tego zadania. Ta wtyczka pozwala Ci przeskanować swoją witrynę i sprawdzić, które wtyczki są kompatybilne z trzema najnowszymi wersjami PHP.

Po zakończeniu skanowania wyświetli listę Twoich wtyczek i podświetli wszystkie, które zawierają kod ze starszych wersji PHP, który jest teraz niekompatybilny z wersją, którą właśnie przetestowałeś.

Ważne jest, aby przełączyć szczegóły każdej wtyczki, które są wyświetlane z tagiem „Unknown”, takie jak Caldera Form powyżej. Wtyczki takie jak ta są pomijane, ponieważ są zbyt duże do skanowania.

Jeśli zauważysz, że jakiekolwiek wtyczki, których używasz, nie są kompatybilne z najnowszą wersją PHP lub dają nieznane wyniki lub ostrzeżenia, skontaktuj się z autorem wtyczki i poproś o wsparcie.

Jak zaktualizować do najnowszej wersji PHP

Jak już przetestujesz swoją witrynę WordPress pod kątem kompatybilności – i wykonasz kopię zapasową, aby być po bezpiecznej stronie – jesteś gotowy, aby zaktualizować swoją wersję PHP.

Najlepiej jest uaktualnić swoją witrynę inscenizacyjną przed uaktualnieniem witryny produkcyjnej, aby być na bezpiecznej stronie i upewnić się, że nie ma problemów z żywą witryną.

Uaktualnianie PHP z cPanel

Jeśli jesteś z hostem, który zapewnia dostęp do cPanel do swojej witryny, możesz po prostu zalogować się do cPanel i zmienić wersję PHP tam.

Wszystko, co musisz zrobić, to przewinąć w dół do sekcji Oprogramowanie i wybrać „Wybierz wersję PHP.”

Na następnej stronie wybierz wersję PHP, której chcesz użyć i kliknij „Ustaw jako aktualną.”

To wszystko, co musisz zrobić. Odśwież swoją stronę, aby sprawdzić, czy działa poprawnie, ale jeśli sprawdziłeś zgodność, twoja strona powinna być w porządku.

Podwyższanie wersji PHP na własnym serwerze

Jeśli administrujesz własnym serwerem, możesz zaktualizować go do PHP 7.2 samodzielnie, korzystając z przewodników migracji zawartych w dokumentacji na stronie php.net. Ważne jest, abyś zwrócił szczególną uwagę na nowe cechy i funkcje, a także na te przestarzałe, które mogą mieć wpływ na Twoją witrynę.

Migracja z PHP 5.6.x do PHP 7.0.x
Migracja z PHP 7.0.x do PHP 7.1.x
Migracja z PHP 7.1.x do PHP 7.2.x

Poprosić hosting o aktualizację PHP

Jeśli nie masz dostępu do cPanelu lub innego stosunkowo prostego sposobu na aktualizację PHP, skontaktuj się z hostingiem. Proces aktualizacji powinien być prosty, bez wpływu na twoją witrynę.

WooCommerce zaleca wysłanie tego emaila do twojego dostawcy hostingu, ale tutaj jest zmieniona i aktualna wersja:

Drogi gospodarzu,

Prowadzę witrynę WordPress na jednym z twoich serwerów i WordPress.org zaleca PHP 7.2 jako wymaganą wersję PHP na ich stronie wymagań: https://wordpress.org/about/requirements/

Czy mógłbyś mnie poinformować, czy mój hosting obsługuje PHP 7.2 i jak mogę dokonać aktualizacji?

Czekam na Twoją odpowiedź.

Jeśli Twój hosting utrudnia Ci upgrade, lub nawet odmawia zrobienia go dla Ciebie, czas znaleźć nowy hosting.

Czas przejść na PHP 7+

Mam nadzieję, że przedstawiłem tutaj wystarczająco przekonywujące argumenty, aby przekonać Cię do aktualizacji do najnowszej wersji PHP. Nie tylko przyniesie Ci to natychmiastowy wzrost wydajności, ale również Twoja strona będzie lepiej chroniona przed lukami w zabezpieczeniach znalezionymi w starszych wersjach PHP.

Przed aktualizacją swojej strony, upewnij się, że sprawdziłeś jej kompatybilność z wersją PHP, na którą chcesz przejść i wykonaj kopię zapasową. Jeszcze lepiej, utwórz wersję inscenizacyjną witryny i przetestuj ją tam przed aktualizacją witryny na żywo.

Na koniec, jeśli napotkasz na jakiekolwiek hosty, wtyczki lub twórców motywów, którzy utrudniają Ci aktualizację PHP, przełącz się na hosta lub inny produkt, który jest kompatybilny! W ten sposób zajmiesz stanowisko i upewnisz się, że hosty i deweloperzy, którzy nie używają najnowszych wersji, czują presję, aby je uaktualnić.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.