Dodatek do oprogramowania witryny cPanel wyłącza automatyczne aktualizacje WordPress

Opublikowany: 2015-05-15

Nieco ponad dwa miesiące temu Derek Munson, który występuje pod nazwą użytkownika Drumology2001 opublikował wątek na forach wsparcia WordPress.org. Podczas konserwacji kilku witryn WordPress na swoim wirtualnym serwerze prywatnym Munson odkrył, że na wielu z nich działają przestarzałe wersje. Wersje wahały się od 3,9 do 4,1 z co najmniej jedną witryną korzystającą z WordPress 3.9.2.

Przyzwyczaiłem się do widoku „nag” u góry ekranu, który informuje mnie, że jest dostępna nowsza wersja. Nie widzę tego na żadnej z tych stron, które nie są w najnowszej wersji (4.1.1). Kiedy przechodzę do Pulpit nawigacyjny> Aktualizacje i klikam „Sprawdź ponownie”, aby wymusić ręczne sprawdzenie, nadal działa tak, jakby wszystko było aktualne, gdy wyraźnie nie jest.

Początkowo Munson uważał, że All in One WP Security and Firewall blokuje powiadomienia o aktualizacjach. Mbrsolution, główny twórca wtyczki, potwierdził, że nie blokuje powiadomień o aktualizacjach. Po wykonaniu szeregu technik rozwiązywania problemów sugerowanych przez wolontariuszy na forum wsparcia WordPress, Munson zainstalował Wordfence Security, wtyczkę bezpieczeństwa WordPress.

Jedną z godnych uwagi funkcji Wordfence jest jego skaner. Porównuje czyste pliki główne WordPressa z plikami na serwerze i powiadamia użytkownika, jeśli wykryje różnicę. Wyniki skanowania pokazują, że trzy pliki zostały zmienione.

wp-admin/includes/update.php
wp-admin/update-core.php
wp-admin/zawiera/class-wp-upgrader.php

Pliki te zostały zmienione tylko w witrynach WordPress, które zostały zainstalowane za pomocą dodatku Site Software cPanel.

Plik update.php WordPressa .
function get_core_updates( $options = array() ) { $options = array_merge( array( 'available' => true, 'dismissed' => false ), $options ); $dismissed = get_site_option( 'dismissed_update_core' );

Plik update.php cPanel .
function get_core_updates( $options = array() ) { # cPanel override: Disable all core updates to prevent conflict with cPAddons. return false; $options = array_merge( array( 'available' => true, 'dismissed' => false ), $options );

Plik update-core.php WordPressa .
function core_upgrade_preamble() { global $wp_version, $required_php_version, $required_mysql_version; $updates = get_core_updates();

Plik update-core.php cPanel .
function core_upgrade_preamble() { # cPanel override: Do not display the current or the latest version, because we've disabled updates. return; global $wp_version, $required_php_version, $required_mysql_version; $updates = get_core_updates();

Plik class-wp-upgrader.php WordPressa .
public function is_disabled() { // Background updates are disabled if you don't want file changes. if ( defined( 'DISALLOW_FILE_MODS' ) && DISALLOW_FILE_MODS ) return true;

Plik class-wp-upgrader.php cPanel .
public function is_disabled() { return true; // Force this functionality to disabled because it is incompatible with cPAddons. // Background updates are disabled if you don't want file changes. if ( defined( 'DISALLOW_FILE_MODS' ) && DISALLOW_FILE_MODS ) return true;

Kod dodany przez cPanel wyłącza podstawowe aktualizacje WordPress, powiadomienia o aktualizacjach i automatyczne aktualizacje w tle do wersji punktowych. Gdy Munson przywrócił te pliki do ich oryginalnej wersji, automatyczne aktualizacje i powiadomienia działały poprawnie.

cPanel i cPAddons

Osoby, które zarządzają serwerami dedykowanymi lub wirtualnymi serwerami prywatnymi za pomocą cPanel, mają możliwość korzystania z cPAddonów. Zgodnie z dokumentacją cPanel „Dodatki to aplikacje współpracujące z cPanel w celu wykonywania funkcji na stronach internetowych użytkowników. Przykładami takich aplikacji są tablice ogłoszeń, internetowe koszyki i blogi”.

Otwórz dialog za pomocą cPanel

George Stephanis, główny współtwórca WordPress i główny programista Jetpack, publicznie nazwał działania cPanel jako złą praktyką.

Przedstawiciel cPanel zobaczył tweeta i odpowiedział, że chciałby otrzymać więcej informacji.

https://twitter.com/cpanelcares/status/597886956945711107

Stephanis zaangażował się w długą rozmowę z przedstawicielami cPanel, wyjaśniając, dlaczego wyłączanie podstawowych aktualizacji jest złym pomysłem. cPanel wyłącza natywny system aktualizacji WordPressa, ponieważ może powodować konflikty z wersją WordPress oprogramowania cPanel.

Najnowszą wersję WordPressa zazwyczaj publikujemy w ciągu 1 do 5 dni od ostatniej aktualizacji WordPressa. Administratorzy serwerów są informowani co najmniej każdej nocy o wszystkich aplikacjach Site Software, które wymagają aktualizacji. To do użytkowników należy skonfigurowanie powiadomień w cPanel, aby otrzymywać takie aktualizacje.

Sposób, w jaki nasze narzędzie cPAddons śledzi oprogramowanie, nie jest zgodny ze sposobem, w jaki aktualizuje się WordPress, dlatego wyłączamy automatyczne aktualizacje, abyśmy mogli śledzić je za pomocą cPAddons.

cPanel wyjaśnia, w jaki sposób obsługiwane są aktualizacje oprogramowania zainstalowanego za pomocą cPAddon oprogramowania witryny.

  • Za każdym razem, gdy WP wydaje wersję konserwacyjną, która rozwiązuje problemy związane z bezpieczeństwem, bardzo szybko reagujemy, aby nasze oprogramowanie było aktualizowane, aby było dostępne dla klientów.
  • Domyślnie definiujemy, że oprogramowanie zarządzane/instalowane przez cPAddons jest automatycznie aktualizowane, gdy dostępna jest nowa aktualizacja.
  • W oparciu o powyższe informacje, jeśli administrator serwera pozostawi włączone ustawienia domyślne, gdy WP wprowadzi wydanie konserwacyjne, które koryguje problemy związane z bezpieczeństwem, a my przetestowaliśmy i zaktualizowaliśmy dla niego nasze źródło, klienci otrzymają wydanie automatycznie.
  • Jeśli administrator serwera zdecyduje się wyłączyć automatyczne aktualizacje oprogramowania, użytkownik końcowy i administrator systemów nadal będą otrzymywać powiadomienia, że ​​ich instalacja jest nieaktualna, wraz z instrukcjami dotyczącymi aktualizacji aplikacji.

Domyślnie oprogramowanie instalowane przez cPanel jest skonfigurowane do automatycznej aktualizacji, ale niektóre witryny Munsona nie aktualizowały się. Nie otrzymywał też powiadomień o aktualizacjach tych witryn. cPanel uważa, że ​​jest coś nie tak z konfiguracją serwera Munsona i zobowiązał się do skontaktowania z nim w celu uzyskania dodatkowych informacji.

W oparciu o to, co Drumology2001 poinformował na forum, wydaje się, że coś jest nie tak na tym serwerze. Chcielibyśmy zbadać ten serwer, aby ustalić, dlaczego aktualizacje WordPress nie były dostępne dla użytkownika.

Na podstawie rozmytych dat użytych na forum i porównanych z naszymi wewnętrznymi danymi, aktualizacja 4.1.1 była dostępna w systemie Site Software przed pierwszym wpisem. Skontaktujemy się z nim, aby ustalić, czy jest coś, co możemy tam zrobić.

Otwarci na zmiany

Dobrą wiadomością jest to, że cPanel reaguje i chętnie wprowadza wszelkie niezbędne zmiany, aby usprawnić proces aktualizacji. Biorąc pod uwagę, ile firm hostingowych oferuje klientom możliwość zainstalowania WordPressa za pomocą instalatora jednym kliknięciem, ważne jest, aby witryny otrzymywały aktualizacje tak szybko, jak to możliwe.

Jeśli zainstalowałeś WordPress za pomocą instalatora jednym kliknięciem cPanel, upewnij się, że na Twojej stronie działa WordPress 4.2.2, który jest najnowszą stabilną wersją.