Jak możemy pomóc?

Poszukiwanie...

WP-CRON i jego wpływ na obciążenie serwera?

WP-Cron uruchamia zaplanowane zadania WordPressa, np. publikację wpisów i czynności wykonywane przez wtyczki. Zwykle jest wywoływany przy wejściach na witrynę. Jeśli chcesz uruchamiać te zadania regularnie, niezależnie od odwiedzin, możesz połączyć go z harmonogramem Cron na hostingu.

Jak działa WP-Cron i skąd bierze się obciążenie?

Systemowy Cron sprawdza harmonogram niezależnie od ruchu w witrynie. WP-Cron sprawdza, czy nadszedł czas wykonania zadań, gdy uruchamia się WordPress. Przy małym ruchu zaplanowana czynność może zacząć się później, dopiero po kolejnym wywołaniu witryny. Mechanizm opisuje dokumentacja WordPressa.

Każda wizyta nie oznacza ponownego wykonania wszystkich zadań. Obciążenie zależy przede wszystkim od tego, co robią zadania, jak długo trwają i jak często są zaplanowane. Kosztowne skanowanie, synchronizacja lub kopia zapasowa mogą obciążać usługę również po przeniesieniu wywołań do Crona.

Kiedy warto zmienić sposób uruchamiania?

Rozważ harmonogram serwera, jeśli masz opóźnione zadania przy małym ruchu albo chcesz kontrolować częstotliwość wywołań. Najpierw przejrzyj listę zdarzeń i sprawdź, czy nie ma błędów lub nadmiarowych zadań wtyczek. Pomocna może być wtyczka WP Crontrol, która pozwala obejrzeć harmonogram; nie zastępuje sama systemowego Crona.

Wykonaj kopię pliku wp-config.php. Ustal właściwy adres pliku wp-cron.php dla tej instalacji — WordPress może znajdować się w podkatalogu. Nie wyłączaj wywołań z WordPressa, dopóki zastępczy harmonogram nie jest gotowy.

1. Zaloguj się do DirectAdmin

Otwórz panel usługi hostingowej, na której chcesz wykonać konfigurację. Jeśli potrzebujesz pomocy, skorzystaj z instrukcji logowania do DirectAdmin.

2. Utwórz zadanie w panelu

W sekcji Funkcje zaawansowane wybierz Zadania Cron i kliknij Utwórz zadanie Cron. Sprawdź, czy dla tej instalacji nie istnieje już zadanie o takim samym celu.

3. Ustaw częstotliwość

Przykładowo, aby wywoływać WordPressa co pięć minut, wpisz */5 w polu Minuta, a w polach Godzina, Dzień miesiąca, Miesiąc i Dzień tygodnia pozostaw * (3). Nie zaznaczaj uruchamiania przy starcie serwera.

Sprawdź opis harmonogramu pod polami. Pięć minut to przykład: dobierz odstęp do wymagań aplikacji i limitów usługi. Zdarzenie może zaczekać do następnego wywołania, a zadanie trwające dłużej niż interwał wymaga osobnej analizy.

4. Podaj polecenie

W polu Komenda (4) wpisz poniższe polecenie, zastępując przykładowy adres adresem swojej instalacji:

wget -q -O /dev/null 'https://example.com/wp-cron.php?doing_wp_cron'

Jeśli WordPress jest w podkatalogu, uwzględnij go przed wp-cron.php. Adres musi być osiągalny z serwera i mieć poprawny certyfikat HTTPS. Ochrona hasłem HTTP, WAF lub blokada tego pliku może uniemożliwić wywołanie. Przy diagnozowaniu usuń -q, aby zobaczyć komunikaty błędów; nie wyłączaj weryfikacji certyfikatu.

5. Zapisz zadanie i sprawdź wywołania

Kliknij Utwórz (5). Sprawdź wpis na liście Cron i poczekaj na najbliższe wykonanie. W logu żądań witryny lub narzędziu do obsługi zdarzeń WordPressa sprawdź, czy harmonogram jest uruchamiany. Samo otwarcie pustej strony wp-cron.php nie potwierdza powodzenia wszystkich zadań.

6. Wyłącz wywołania przy odwiedzinach

Po uruchomieniu harmonogramu otwórz wp-config.php właściwej instalacji. Przed komentarzem kończącym konfigurację i przed wczytaniem wp-settings.php dodaj:

define( 'DISABLE_WP_CRON', true );

Jeśli ta stała już istnieje, zmień jej wartość zamiast dodawać drugi wpis. Zapisz plik. Nie edytuj pliku wp-cron.php — to plik WordPressa, a nie miejsce na własną konfigurację. Stała wyłącza automatyczne wywołanie przy odwiedzinach; plik nadal może być uruchamiany przez harmonogram serwera. Taką konfigurację opisuje instrukcja WordPressa.

7. Obserwuj zadania i w razie potrzeby cofnij zmianę

Sprawdź wykonanie zaplanowanego wpisu lub innego znanego zdarzenia. Obserwuj opóźnione zadania, błędy PHP i wykorzystanie zasobów. Jeśli nadal występuje przeciążenie, ustal, która wtyczka lub czynność je powoduje; samo zmniejszenie liczby wywołań nie naprawia kosztownego kodu.

Aby wrócić do poprzedniego sposobu działania, usuń dodaną stałą albo ustaw ją na false, a następnie wyłącz odpowiadające jej zadanie Cron. Nie pozostawiaj wyłączonych obu sposobów uruchamiania, ponieważ zaplanowane czynności przestaną być wykonywane.